thinkphp emptycontroller怎么执行的
1个回答
展开全部
空控制器的概念是指当系统找不到请求的控制器名称的时候,系统会尝试定位空控制器(EmptyController)。
http://localhost/index.php/passport/index/index这个url地址:
首先大小写一定要规范, 防止Linux环境下出错,正确写法是
http://localhost/index.php/Passport/Index/index ,地址访问的是Passport模块/Index控制器/index方法。
为什么会这样?还记得安装ThinkPHP的时候,输入入口文件地址http://localhost/index.php出现的那个笑脸吧?系统会访问index.php/Home/Index/index ,即Home模块下/Index控制器/index方法,这是系统默认设定的,
而当访问index.php/模块名,系统会自动定位到当前模块下的Index控制器下的index方法,这也是系统默认设定的,所以,当访问 index.php/Passport 时,会进入index.php/Passport/Index/index
至于加上反斜杠“/”,url是以"/"作为分隔符的,如果"/"后面如果为空,则pathinfo解析的值为空,因为此处代表控制器,所以访问的是空控制器,又因为直接访问控制器,系统会自动定位到当前控制器下的index方法,所以会进入Passport/Empty/index。
其实不只是加上“/”,只要访问的控制器不存在,都会定位到空控制器EmptyController 。
http://localhost/index.php/passport/index/index这个url地址:
首先大小写一定要规范, 防止Linux环境下出错,正确写法是
http://localhost/index.php/Passport/Index/index ,地址访问的是Passport模块/Index控制器/index方法。
为什么会这样?还记得安装ThinkPHP的时候,输入入口文件地址http://localhost/index.php出现的那个笑脸吧?系统会访问index.php/Home/Index/index ,即Home模块下/Index控制器/index方法,这是系统默认设定的,
而当访问index.php/模块名,系统会自动定位到当前模块下的Index控制器下的index方法,这也是系统默认设定的,所以,当访问 index.php/Passport 时,会进入index.php/Passport/Index/index
至于加上反斜杠“/”,url是以"/"作为分隔符的,如果"/"后面如果为空,则pathinfo解析的值为空,因为此处代表控制器,所以访问的是空控制器,又因为直接访问控制器,系统会自动定位到当前控制器下的index方法,所以会进入Passport/Empty/index。
其实不只是加上“/”,只要访问的控制器不存在,都会定位到空控制器EmptyController 。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询