栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > PHP > php开源框架 > thinkphp

路由绑定 - ThinkPHP5.0完全开发手册

thinkphp 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

路由绑定 - ThinkPHP5.0完全开发手册

可以使用路由绑定简化URL或者路由规则的定义,绑定支持如下方式: ## 绑定到模块/控制器/操作 把当前的URL绑定到模块/控制器/操作,最多支持绑定到操作级别,例如在路由配置文件中添加: ~~~ // 绑定当前的URL到 index模块 Route::bind('index'); // 绑定当前的URL到 index模块的blog控制器 Route::bind('index/blog'); // 绑定当前的URL到 index模块的blog控制器的read操作 Route::bind('index/blog/read'); ~~~ 该方式针对路由到模块/控制器/操作有效,假如我们绑定到了index模块的blog控制器,那么原来的访问URL从 ~~~ http://serverName/index/blog/read/id/5 ~~~ 可以简化成 ~~~ http://serverName/read/id/5 ~~~ 如果定义了路由 ~~~ Route::get('index/blog/:id','index/blog/read'); ~~~ 那么访问URL就变成了 ~~~ http://serverName/5 ~~~ ## 绑定到命名空间 把当前的URL绑定到某个指定的命名空间,例如: ~~~ // 绑定命名空间 Route::bind('appindexcontroller','namespace'); ~~~ 那么,我们接下来只需要通过 ~~~ http://serverName/blog/read/id/5 ~~~ 就可以直接访问 `appindexcontrollerBlog`类的read方法。 ## 绑定到类 把当前的URL直接绑定到某个指定的类,例如: ~~~ // 绑定到类 Route::bind('appindexcontrollerBlog','class'); ~~~ 那么,我们接下来只需要通过 ~~~ http://serverName/read/id/5 ~~~ 就可以直接访问 `appindexcontrollerBlog`类的read方法。 > 注意:绑定到命名空间和类之后,不会进行模块的初始化工作。 ## 入口文件绑定 如果我们需要给某个入口文件绑定模块,可以使用下面两种方式: ### 常量定义 只需要入口文件添加`BIND_MODULE`常量,即可把当前入口文件绑定到指定的模块或者控制器,例如: ~~~ // 定义应用目录 define('APP_PATH', __DIR__ . '/../application/'); // 绑定到index模块 define('BIND_MODULE','index'); // 加载框架引导文件 require __DIR__ . '/../thinkphp/start.php'; ~~~ ### 自动入口绑定 如果你的入口文件都是对应实际的模块名,那么可以使用入口文件自动绑定模块的功能,只需要在应用配置文件中添加: ~~~ // 开启入口文件自动绑定模块 'auto_bind_module' => true, ~~~ 当我们重新添加一个 `public/demo.php`入口文件,内容和`public/index.php`一样: ~~~ // 定义应用目录 define('APP_PATH', __DIR__ . '/../application/'); // 加载框架引导文件 require __DIR__ . '/../thinkphp/start.php'; ~~~ 但其实访问 `demo.php`的时候,其实已经自动绑定到了`demo`模块。
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/213450.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号