默认模块和操作
尝试在浏览器访问如下地址:
http://127.0.0.1/html/Myapp/index.php/Index/index
显示结果与不加“/Index/index”是一样的。实际上当我们访问入口文件的时候,由于缺乏足够的参数,那么它会默认执行 Index 模块的 index 操作。
也就是说下面三个地址是等效的:
http://127.0.0.1/html/Myapp/index.php
http://127.0.0.1/html/Myapp/index.php/Index
http://127.0.0.1/html/Myapp/index.php/Index/index
URL 格式
如果要访问别的模块和操作,格式如下:
http://127.0.0.1/html/Myapp/index.php/模块/操作
http://127.0.0.1/html/Myapp/index.php/m/模块/a/操作
这种以 / 符号来划分参数的 URL 格式称为 PATHINFO 格式。省去了 m 和 a 参数的称为“智能 PATHINFO 格式”,也是 ThinkPHP 推荐和最常用的格式。
PATHINFO 格式转化为传统的格式如下:
http://127.0.0.1/html/Myapp/index.php?m=模块&a=操作
以上 URL 格式效果完全一样,关至于系统采用何种 URL 格式,可以在项目配置文件中配置,具体可参考《ThinkPHP 系统配置》章节。
下表是一个URL地址与各参数之间的对应关系举例(项目部署在网站根目录下且没启用项目分组):
参数
例子一
例子二
URL地址
http://127.0.0.1/index.php/Index/index
http://127.0.0.1/index.php/User/read
文件名(控制器)
IndexAction.class.php
UserAction.class.php
类名
IndexAction
UserAction
模块名
Index
User
操作名
index
read
对应模板
Tpl\default\Index\index.html
Tpl\default\User\read.html