多模块 入口文件 bind绑定后url函数输出问题

浏览:80 发布日期:2019/11/26 分类:ThinkPHP5专区 关键字: 入口文件 bind url
今天做多模块后台时遇到连接问题总结一下
先看代码
1、admin.php //后台入口文件// [ 应用入口文件 ]
namespace think;

// 加载基础文件
require __DIR__ . '/../thinkphp/base.php';

// 支持事先使用静态方法设置Request对象和Config对象

// 执行应用并响应
Container::get('app')->bind('admin')->run()->send();
index.php(index模块)下输出url()

url('@index/IndeTest/test'): /index.php/index/IndeTest/test.html
url('@admin/IndeTest/test'): /index.php/admin/IndeTest/test.html
url('index/IndeTest/test'): /index.php/index/inde_test/test.html
url('admin/IndeTest/test'): /index.php/admin/inde_test/test.html

admin.php(admin模块)下输出url()

url('@index/IndeTest/test'): /admin.php/index/IndeTest/test.html
url('@admin/IndeTest/test'): /admin.php/IndeTest/test.html
url('index/IndeTest/test'): /admin.php/index/inde_test/test.html
url('admin/IndeTest/test'): /admin.php/inde_test/test.html


总结:
1、如果入口文件为index.php则输出按照:/模块/控制器/操作进行输出,且带@符号的不进行下划线字母替换大写字母,否则执行替换
2、如果绑定模块,则如果输出url模块为该模块,则省略模块名,为:/控制器/操作,否则为:/模块/控制器/操作,带@与不带@同上
3、如果设置Url::root('/')或者Url::root(/index.php)则输出分别为
index.php/【模块/控制器/操作】,其中【模块/控制器/操作】的规则同上1、2
最佳答案
评论( 相关
后面还有条评论,点击查看>>