自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(20)
  • 收藏
  • 关注

转载 ThinkPHP学习——控制器_Action参数绑定

参数绑定是通过直接绑定URL地址中的变量作为操作方法的参数,可以简化方法的定义甚至路由的解析。参数绑定功能默认是开启的,其原理是把URL中的参数(不包括模块、控制器和操作名)和操作方法中的参数进行绑定。要启用参数绑定功能,首先确保你开启了URL_PARAMS_BIND设置:'URL_PARAMS_BIND' => true, // URL变量绑定到操作...

2017-05-22 15:12:00 173

转载 ThinkPHP学习——控制器_前置与后置

前置和后置操作指的是在执行某个操作方法之前和之后会自动调用的方法,不过仅对访问控制器有效。其他的分层控制器层和内部调用控制器的情况下前置和后置操作是无效的。系统会检测当前操作是否具有前置和后置操作,如果存在就会按照顺序执行,前置和后置操作的定义方式如下:<?phpnamespace Home\Controller;use Think\Controller;...

2017-05-22 15:03:00 255

转载 Thinkphp学习——控制器_控制器定义

一般来说,ThinkPHP的控制器是一个类,而操作则是控制器类的一个公共方法。下面就是一个典型的控制器类的定义:<?phpnamespace Home\Controller;use Think\Controller;class IndexController extends Controller { public function hello(){...

2017-05-22 15:01:00 325

转载 Thinkphp3.2学习——路由_实例说明

假设我们定义了News控制器如下(代码实现仅供参考):namespace Home\Controller;use Think\Controller;class NewsController extends Controller{ public function read(){ $New = M('New'); if(isset...

2017-05-22 14:26:00 152

转载 ThinkPHP3.2学习——路由_闭包支持

闭包定义我们可以使用闭包的方式定义一些特殊需求的路由,而不需要执行控制器的操作方法了,例如:'URL_ROUTE_RULES'=>array( 'test' => function(){ echo 'just test'; }, 'hello/:name' => function($name){ echo 'Hello,'.$na...

2017-05-16 15:30:00 143

转载 ThinkPHP3.2学习——路由_静态路由

静态路由其实属于规则路由的静态简化版(又称为URL映射),路由定义中不包含动态参数,静态路由不需要遍历路由规则而是直接定位,因此效率较高,但作用也有限。如果我们定义了下面的静态路由'URL_ROUTER_ON' => true,'URL_MAP_RULES'=>array( 'new/top' => 'news/index?type=top')...

2017-05-16 15:28:00 250

转载 ThinkPHP3.2学习——路由_正则路由

正则路由也就是采用正则表达式定义路由的一种方式,依靠强大的正则表达式,能够定义更灵活的路由规则。路由表达式支持的正则定义必须以“/”开头,否则就视为规则表达式。也就是说如果采用:'#^blog\/(\d+)$#' => 'Blog/read/id/:1'方式定义的正则表达式不会被支持,而会被认为是规则表达式进行解析,从而无法正确匹配。下面是一种正确的正则路由...

2017-05-16 15:27:00 216

转载 Thinkphp3.2学习——路由_规则路由

规则路由规则路由是一种比较容易理解的路由定义方式,采用ThinkPHP设计的规则表达式来定义。规则表达式规则表达式通常包含静态地址和动态地址,或者两种地址的结合,例如下面都属于有效的规则表达式:'my' => 'Member/myinfo', // 静态地址路由'blog/:id' => 'Blog/read', // 静态地址和动态地址结合'ne...

2017-05-16 14:35:00 560

转载 ThinkPHP3.2学习——路由_路由定义

一、启用路由要使用路由功能,前提是你的URL支持PATH_INFO(或者兼容URL模式也可以,采用普通URL模式的情况下不支持路由功能),并且在应用(或者模块)配置文件中开启路由:// 开启路由'URL_ROUTER_ON' => true, 3.2的路由功能是针对模块设置的,所以URL中的模块名不能被路由,路由定义也通常是放在模块配置文件中。 3.2....

2017-05-16 14:25:00 517

转载 ThinkPHP3.2学习——架构_系统流程

我们来系统的了解下ThinkPHP框架开发的应用的标准执行流程:用户URL请求调用应用入口文件(通常是网站的index.php)载入框架入口文件(ThinkPHP.php)记录初始运行时间和内存开销系统常量判断及定义载入框架引导类(Think\Think)并执行Think::start方法进行应用初始化设置错误处理机制和自动加载机制调用Think\St...

2017-05-16 14:16:00 92

转载 ThinkPHP3.2学习——架构_项目编译

应用编译机制作为ThinkPHP独创的功能特色,从1.0版本就延续至今,3.2版本的编译机制更加具有特色。一、应用编译缓存编译缓存的基础原理是第一次运行的时候把核心需要加载的文件去掉空白和注释后合并到一个文件中,第二次运行的时候就直接载入编译缓存而无需载入众多的核心文件。当第二次执行的时候就会根据当前的应用模式直接载入编译过的缓存文件,从而省去很多IO开销,加快执行速度。...

2017-05-16 14:14:00 87

转载 ThinkPHP3.2学习——架构_应用模式

3.2版本的应用模式可以替代之前的引擎扩展和模式扩展,支持应用模式定义。每个应用模式有自己的定义文件,用于配置当前模式需要加载的核心文件和配置文件,以及别名定义、行为扩展定义等等。除了模式定义外,应用自身也可以独立定义模式文件。如果应用模式涉及到不同的存储类型,例如采用分布式存储等,就需要另外设置存储类型(STORAGE_TYPE)。不同的存储类型由Think\Storage类及...

2017-05-16 14:08:00 86

转载 Thinkphp3.2学习——架构_自动加载

在3.2中,基本上无需手动加载类库文件,你可以很方便的完成自动加载一、命名空间自动加载系统可以通过类的命名空间自动定位到类库文件,例如:我们定义了一个类Org\Util\Auth类:namespace Org\Util;class Auth {}保存到ThinkPHP/ Library/Org/Util/Auth.class.php。接下来...

2017-05-16 10:46:00 80

转载 Thinkphp3.2学习——架构_命名空间

3.2版本全面采用命名空间方式定义和加载类库文件,有效的解决多个模块之间的冲突问题,并且实现了更加高效的类库自动加载机制。命名空间的概念必须了解,否则会成为3.2版本开发的重大障碍。如果不清楚什么是命名空间,可以参考PHP手册:PHP命名空间由于新版完全采用了命名空间的特性,因此只需要给类库正确定义所在的命名空间,而命名空间的路径与类库文件的目录一致,那么就可以实现类...

2017-05-12 10:41:00 78

转载 ThinkPHP3.2学习——架构_CBD模式

ThinkPHP从3.0版本开始引入了全新的CBD(核心Core+行为Behavior+驱动Driver)架构模式,因为从底层开始,框架就采用核心+行为+驱动的架构体系,核心保留了最关键的部分,并在重要位置设置了标签用以标记,其他功能都采用行为扩展和驱动的方式组合,开发人员可以根据自己的需要,对某个标签位置进行行为扩展或者替换,就可以方便的定制框架底层,也可以在应用层添加自己的标签位置和...

2017-05-12 10:35:00 136

转载 Thinkphp3.2学习——架构_多层MVC

ThinkPHP基于MVC(Model-View-Controller,模型-视图-控制器)模式,并且均支持多层(multi-Layer)设计。一、模型层(MODEL) 默认的模型层由Model类构成,但是随着项目的增大和业务体系的复杂化,单一的模型层很难解决要求,从3.1开始推出了多层Model的支持,设计思路很简单,不同的模型层仍然都继承自系统的Model类,但是在目...

2017-05-12 10:24:00 91

转载 Thinkphp3.2学习——架构_URL模式

入口文件是应用的单一入口,对应用的所有请求都定向到应用入口文件,系统会从URL参数中解析当前请求的模块、控制器和操作:http://serverName/index.php/模块/控制器/操作这是3.2版本的标准URL格式。可以通过设置模块绑定或者域名部署等方式简化URL地址中的模块及控制器名称。一、URL大小写ThinkPHP框架的URL是...

2017-05-12 10:13:00 70

转载 Thinkphp3.2——架构_模块化设计

一、模块化设计一个完整的ThinkPHP应用基于 模块/控制器/操作 设计,并且,如果有需要的话,可以支持多入口文件和多级控制器ThinkPHP3.2采用模块化的架构设计思想,对目录结构做了调整,可以支持多模块应用的创建,让应用的拓展更加方便。一个典型的URL访问规则(默认URL规则是PATHINFO模式一例说明,当然和支持其他的模式) http://server...

2017-05-11 15:11:00 129

转载 Thinkphp3.2———配置模块

一、配置格式Thinkphp框架中的所有配置都是数组形式定义的的格式为://项目配置return array( 'DEFAULT_MODULE'=>'Index',//默认模块 'URL_MODEL'=>'2',//URL模式 'SESSION_AUTH_START'=>true,//是否开启session ...

2017-05-09 17:22:00 289

转载 ThinkPHP3.2——基础

1.1、获取ThinkPHP 3.2  获取ThinkPHP的方式很多,官方网站(http://thinkphp.cn)是最好的下载和文档获取来源。官网提供了稳定版本的下载:http://thinkphp.cn/down/framework.html官网下载版本提供了完整版和核心版两个版本,核心版本只保留了核心类库和必须的文件,去掉了所有的扩展类库和驱动,支持标准模式...

2014-05-08 14:22:00 109

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除