ThinkPHP 的一些知识
初学者的疑问:
- 哪个URL能访问到哪个实际函数 (
ThinkPHP如何把请求解析成 应用/控制器/方法)
thinkphp 有两种入口方式 :
- 显示路由
- 通过
Route::rule()、Route::get()手动写入匹配规则,thinkphp内部会按你写的规则匹配。
- 通过
- 默认路由
- 没写显式路由,或当前请求的URL没有匹配上你写的显示路由规则,并且允许默认路由,框架会按照 “应用 / 控制器 / 方法” 去找函数。
引出第二个问题:
- 如何区分 应用 / 控制器 / 方法
| |
对应到实际的路径应该是
| |
例如:
| |
对应:
| |
里的:
| |
应用:能作为 app/<name>/controller/...,这样的独立业务分区存在;对应url里面的第一段。
控制器:负责接收请求并处理业务,app/index/controller/<name>;对应url里面的第二段。
方法:控制器类里的函数,真正执行业务逻辑;对应url里的第三段。
默认路由
从代码找 URL
| |
从 URL 找代码
| |
显示路由
| |