控制器和操作 一般来说,ThinkPHP的控制器是一个类,而操作则是控制器类的一个公共方法。 下面就是一个典型的控制器类的定义: Home\IndexController类就代表了Home模块下的Index控制器,而hello操作就是Home\IndexController类的hello(公共)方法 ...
分类:
Web程序 时间:
2019-11-01 16:55:19
阅读次数:
102
闭包定义 我们可以使用闭包的方式定义一些特殊需求的路由,而不需要执行控制器的操作方法了,例如: 参数传递 闭包定义的参数传递在规则路由和正则路由的两种情况下有所区别。 规则路由的参数传递比较简单: 规则路由中定义的动态变量的名称 就是闭包函数中的参数名称,不分次序。 因此,如果我们访问的URL地址是 ...
分类:
Web程序 时间:
2019-11-01 16:44:05
阅读次数:
120
静态路由其实属于规则路由的静态简化版(又称为URL映射),路由定义中不包含动态参数,静态路由不需要遍历路由规则而是直接定位,因此效率较高,但作用也有限。 如果我们定义了下面的静态路由 注意:为了不影响动态路由的遍历效率,静态路由采用URL_MAP_RULES定义和动态路由区分开来 定义之后,如果我们 ...
分类:
Web程序 时间:
2019-11-01 16:35:05
阅读次数:
125
正则路由也就是采用正则表达式定义路由的一种方式,依靠强大的正则表达式,能够定义更灵活的路由规则。 路由表达式支持的正则定义必须以“/”开头,否则就视为规则表达式。也就是说如果采用: 方式定义的正则表达式不会被支持,而会被认为是规则表达式进行解析,从而无法正确匹配。 下面是一种正确的正则路由定义: 对 ...
分类:
Web程序 时间:
2019-11-01 16:32:18
阅读次数:
135
规则路由是一种比较容易理解的路由定义方式,采用ThinkPHP设计的规则表达式来定义。 规则表达式 规则表达式通常包含静态地址和动态地址,或者两种地址的结合,例如下面都属于有效的规则表达式: 规则表达式的定义始终以“/”为参数分割符,不受URL_PATHINFO_DEPR设置的影响 每个参数中以“: ...
分类:
Web程序 时间:
2019-11-01 12:45:38
阅读次数:
126
1.下载并打开phpstudy, 2.找到phpstudy文件下的www下目录,并创建你开始做的项目名称 3.打开phpstudy添加网站域名 和指向网站目录,端口号默认80,如图所示: 4.去thinkphp官网下载tp框架,下载最新版本-完整版 网址:http://www.thinkphp.cn ...
分类:
Web程序 时间:
2019-10-30 16:47:17
阅读次数:
370
在3.2中,基本上无需手动加载类库文件,你可以很方便的完成自动加载。 命名空间自动加载 系统可以通过类的命名空间自动定位到类库文件,例如: 我们定义了一个类 Org\Util\Auth 类: 保存到 ThinkPHP/Library/Org/Util/Auth.class.php。 接下来,我们就可 ...
分类:
Web程序 时间:
2019-10-29 16:56:23
阅读次数:
105
入口文件是应用的单一入口,对应用的所有请求都定向到应用入口文件,系统会从URL参数中解析当前请求的模块、控制器和操作: 这是3.2版本的标准URL格式。 可以通过设置模块绑定或者域名部署等方式简化URL地址中的模块及控制器名称。 URL大小写 ThinkPHP框架的URL是区分大小写(主要是针对模块 ...
分类:
Web程序 时间:
2019-10-29 15:33:25
阅读次数:
108
C配置方法支持批量配置,例如: $config数组中的配置参数会合并到现有的全局配置中。 我们可以通过这种方式读取数据库中的配置参数,例如: 合并之后,我们就可以和前面读取普通配置参数一样,读取数据库中的配置参数了,当然也可以动态改变。 ...
分类:
Web程序 时间:
2019-10-29 13:56:53
阅读次数:
114
一个完整的ThinkPHP应用基于模块/控制器/操作设计,并且,如果有需要的话,可以支持多入口文件和多级控制器。 ThinkPHP3.2采用模块化的架构设计思想,对目录结构规范做了调整,可以支持多模块应用的创建,让应用的扩展更加方便。 一个典型的URL访问规则是(我们以默认的PATHINFO模式为例 ...
分类:
Web程序 时间:
2019-10-29 13:22:19
阅读次数:
121