自制PHP框架之路由与控制器
我们为什么要使用路由?原因1:一个更漂亮的URI 1.URI的改进 刚刚开始学PHP时,我们一定写过blog.php?id=1之类的URI,使用GET方式获取参数。这样的URI有两个缺点,一是容易被SQL注射攻击,二是维护性可读性差,大家可以比较下面两种URI哪一种更具备可读性。 ......
共有 157 个资源与此标签相关 · 累计浏览 157655 次
我们为什么要使用路由?原因1:一个更漂亮的URI 1.URI的改进 刚刚开始学PHP时,我们一定写过blog.php?id=1之类的URI,使用GET方式获取参数。这样的URI有两个缺点,一是容易被SQL注射攻击,二是维护性可读性差,大家可以比较下面两种URI哪一种更具备可读性。 ......
实例如下: <?php /*分治法——直接选择 比如说a b c 首先将a之后的字符依次与a进行交换 1 b,a,c 2 c,b,a 注意这里少了一个原始数据 a,b,c。需要把原始数据也算如排列中 3 a,b,c 然后把字符移到第二个位置,将第二个位置之......
当 HTML 表单 (HTML Form) 的 method 为 get 时,$_GET 用来获取 HTML Form 的数据。 当 HTML 表单 (HTML Form) 的 method 为 post 时 , $_POST 用来获取 HTML Form 的数据。 HTML Form 的get 和......
php是为了快速构建一个web页面而迅速被大家广为接受的开源语言,通过不断发展已经有了很多的php开源系统,满足了目前大部分用户的站点需求。1995年初php诞生到现在已经存在多个版本,并且每个版本都属于一个系列,大多数网站源码都不能相互兼容,所以能够快速的切换PHP版本还是很实用的。 方法一......
ThinkPHP 内置的模板引擎来定义模板文件,以及使用加载文件、模板布局和模板继承等高级功能。 每个模板文件在执行过程中都会生成一个编译后的缓存文件,其实就是一个可以运行的 PHP 文件。 引用自 http://www.kancloud.cn/manual/thinkphp5/118122 ......
在之前的一篇文章我们介绍了《如何向PHP数组中头部和尾部添加元素》既然有添加元素,那么就有删除元素,今天这篇文章详细介绍如何删除数组中的头部元素和尾部元素,还有任意数组元素。 删除末尾元素:array_pop 就像子弹的弹夹一样,最后压入的子弹是最先弹出的,在计算机术语里,我们称之为先进后出栈 ......
CentOS 下,PHP有多种方式来安装扩展, 主要有 包管理式 的 yum 安装 、 pecl 安装 , 以及 源码编译安装 。 包管理式 的安装卸载尤为方便,而 源码编译式 的安装则方便参数调优。 一般搭建本机开发环境推荐 包管理式 的安装,节约时间。而 线上部署 环境则推荐 编译安装 , ......
本文实例讲述了PHP十六进制颜色随机生成器功能。分享给大家供大家参考,具体如下: <?php function randomColor() { $str =
为什么要使用设计模式? 设计模式,我的理解是为了达到“可复用”这个目标,而设计的一套相互协作的类。 感兴趣的读者可以阅读《Design Patterns: Elements of Reusable Object-Oriented Software》,四位作者(Gang of Four)在书中列举......
本文实例讲述了PHP十六进制颜色随机生成器功能。分享给大家供大家参考,具体如下: <?php function randomColor() { $str =
前段时间发表了一个删除栏目的随笔,当时实现的功能是删除一条信息,这次来实现一下批量删除栏目。 我们需要达到的是这样一个效果: 选中批量删除按钮后可以选中所有该页面的栏目,这个是前端页面的实现,在这里就不多说了,我们直接进入正题:批量删除的功能。 1.前端页面这里也有一个小小的点,就是选择框......
前言 之前的一个同事换工作,在面试被问到了 PHP 的 trait 。因为没用过, 所以没答好,我大概是用过几次的,想了想整理了以下的总结。 trait trait 是在一些类(Class)的应该具备的特定的属性或方法,而同父级的另外一些类应该避免包含这些属性和方法情况下使用的. 当然, ......
<?php /* * 简单的函数 */ function fontBold($con){ return "<B>$con</B>"; } $str="简单的函数测试!"; echo "普通文本:$str<br>"; echo "加粗文本:".fontBold......
我觉得在学习的过程中,大家要知道“玩”,制造点成就感,那样的话 学习的效果和热情就会很高涨, 就会更喜欢自己学习的东西! 举例说明: 今天学习PHP的图像函数部分,学习了几个函数,他们分别是: getimagesize() array getimagesize ( string $filename ......
先在GitHub找到PHPMailer 并下载 https://github.com/PHPMailer/PHPMailer //PHPMailer的GitHub地址 将下载的PHPMailer放在ThinkPHP/Library/Vendor目录下 在config.php下......
前言 因为在PHP中mysql_connect模块已经逐渐被弃用,我在搭建环境时也没有再安装mysql扩展,但是今天在维护一个老项目时,出现报错 Fatal error: Uncaught Error: Call to undefined function mysql_connect() ......
虽然 LAMP 组合很不错,但是如果想要架设一台同时支持PHP、ASP、ASP.NET、JSP、Perl的Web虚拟主机服务器,还是用 Windows 2003的IIS 6最好。网上有很多介绍在IIS 6上配置PHP的文章,但是那些方法不是性能不好,就是升级麻烦。下面的方法可以让你在第一次配置好后,......
本文实例讲述了linux平台编译安装PHP7并安装Redis扩展与Swoole扩展的方法。分享给大家供大家参考,具体如下: 前面《PHP7安装Redis扩展教程【Linux与Windows平台】》一文告诉读者简单的安装Redis的方法,下面我们来实现在linux中编译安装PHP7并安装Redis扩......
本文实例讲述了PHP十六进制颜色随机生成器功能。分享给大家供大家参考,具体如下: <?php function randomColor() { $str =
目的:配置运行PHP的环境(IIS+PHP+MYSQL+CF+Perl)支持php+cgi+asp+jsp等 操作系统:windows2000 advance server(sp3)简体中文版 需要相关软件: 一:php-4.3.0-Win32.zip ,到相应站点下载,我上传文件不方便,以下......
前言 虽然这篇文章叫做PHP对象注入,但是本质上还是和PHP的序列化的不正确使用有关。如果你阅读了PHP中的SESSION反序列化机制对序列化就会有一个大致的认识。PHP对象注入其实本质上也是由于序列化引起的。 基础知识 在php类中可能会存在一些叫做魔术函数(magic 函数),这些函数会在......
1. 介绍 -- PHP5添加了一项新的功能:Reflection。这个功能使得phper可以reverse-engineer class, interface,function,method and extension。通过PHP代码,就可以得到某object的所有信息,并且可以和它交互。 -......
本文实例讲述了PHP十六进制颜色随机生成器功能。分享给大家供大家参考,具体如下: <?php function randomColor() { $str =
本文实例讲述了对PHP依赖注入的理解。分享给大家供大家参考,具体如下: 看Laravel的IoC容器文档只是介绍实例,但是没有说原理,之前用MVC框架都没有在意这个概念,无意中在phalcon的文档中看到这个详细的介绍,感觉豁然开朗,复制粘贴过来,主要是好久没有写东西了,现在确实很懒变得! 首先......