laravel框架路由分组,中间件,命名空间,子域名,路由前缀实例分析


Posted in PHP onFebruary 18, 2020

本文实例讲述了laravel框架路由分组,中间件,命名空间,子域名,路由前缀。分享给大家供大家参考,具体如下:

laravel的路由分组,就是把一些具有相同特征的路由进行分组,比如一些路由需要进行验证,一些路由有共同的前缀,一些路由有相同的控制器命名空间等。

这样把路由组合在一起,方便管理,维护性更好。

Route::group([], function () {
  Route::get('user/list', function () {});
  Route::get('user/info', function () {});
});

上面的代码把两个路由归为一组,但并没有应用任何相同特征,这样的意义并不大。

一、中间件

为一组路由设置相同的中间件,可设置多个中间件,执行顺序依数组中的顺序来运行。

Route::middleware(['auth'])->group(function () {
  //使用auth中间件
  Route::get('user/list', function () {});
  //使用auth中间件
  Route::get('user/info', function () {});
});

二、路由前缀

有些路由有共同的前缀,我们可以为这些路由设置一个共同的前缀。

Route::prefix('user')->group(function () {
  //处理/user/list
  Route::get('list', function () {});
  //处理/user/info
  Route::get('info', function () {});
});

三、路由名称前缀

为路由设置名称时,我们想为同组下的路由名称都加上相同的名称前缀。

Route::name('user.')->prefix('user')->group(function () {
  //处理/user/list,并命名为user.list
  Route::get('list', function () {})->name('list');
  //处理/user/info,并命名为user.info
  Route::get('info', function () {})->name('info');
});

四、子域名

针对有多商家的场景,某些家商有自已独立的子域名,这时候我们需要针对子域名来进行路由分组。

Route::domain('{shop}.tmall.com')->group(function () {
  //处理xxx.tmall.com/orders/xxx
  //$shop参数始终是分组路由的第一个参数
  Route::get('orders/{id}', function ($shop, $id) {
  });
  //处理xxx.tmall.com/products/xxx
  //$shop参数始终是分组路由的第一个参数
  Route::get('products/{id}', function ($shop, $id) {
  });
});

五、命名空间

当我们绑定路由到控制器方法时,如果没有显示指定控制器的命名空间,默认为 App\Http\Controllers。

如果分组路由需要绑定位于该命名空间下的子命名空间,如:App\Http\Controllers\Orders。则可为该分组路由设置一个命名空间。

Route::namespace('Orders')->prefix('orders')->group(function () {
  //处理/orders/delete
  //并绑定到App\Http\Controllers\Orders下的DeleteController控制器的index方法
  Route::post('delete', 'DeleteController@index');
  //处理/orders/add
  //并绑定到App\Http\Controllers\Orders下的AddController控制器的index方法
  Route::post('add', 'AddController@index');
});

希望本文所述对大家基于Laravel框架的PHP程序设计有所帮助。

PHP 相关文章推荐
如何隐藏你的.php文件
Jan 04 PHP
php Undefined index的问题
Jun 01 PHP
封装一个PDO数据库操作类代码
Sep 09 PHP
PHPWind与Discuz截取字符函数substrs与cutstr性能比较
Dec 05 PHP
在windows服务器开启php的gd库phpinfo中未发现
Jan 13 PHP
PHP中mb_convert_encoding与iconv函数的深入解析
Jun 21 PHP
php结合mysql与mysqli扩展处理事务的方法
Jun 29 PHP
PHP模糊查询技术实例分析【附源码下载】
Mar 07 PHP
PHP使用OB缓存实现静态化功能示例
Mar 23 PHP
thinkphp 框架数据库切换实现方法分析
May 18 PHP
PHP实现腾讯短网址生成api接口实例
Dec 08 PHP
PHP连接MySQL数据库三种实现方法
Dec 10 PHP
laravel框架select2多选插件初始化默认选中项操作示例
Feb 18 #PHP
laravel框架使用FormRequest进行表单验证,验证异常返回JSON操作示例
Feb 18 #PHP
PHP For循环字母A-Z当超过26个字母时输出AA,AB,AC
Feb 16 #PHP
php反序列化长度变化尾部字符串逃逸(0CTF-2016-piapiapia)
Feb 15 #PHP
浅析PHP反序列化中过滤函数使用不当导致的对象注入问题
Feb 15 #PHP
laravel框架使用极光推送消息操作示例
Feb 15 #PHP
laravel框架使用阿里云短信发送消息操作示例
Feb 15 #PHP
You might like
探讨PHP中OO之静态关键字以及类常量的详解
2013/06/07 PHP
PHP操作MongoDB GridFS 存储文件的详解
2013/06/20 PHP
兼容ie6浏览器的php下载文件代码分享
2014/07/14 PHP
Symfony2学习笔记之系统路由详解
2016/03/17 PHP
PHP获取类私有属性的3种方法
2020/09/10 PHP
phpstudy2020搭建站点的实现示例
2020/10/30 PHP
如何用javascript判断录入的日期是否合法
2007/01/08 Javascript
JavaScript 应用技巧集合[推荐]
2009/08/30 Javascript
jQuery数组处理方法汇总
2011/06/20 Javascript
JS 按钮点击触发(兼容IE、火狐)
2013/08/07 Javascript
15位和18位身份证JS校验的简单实例
2016/07/18 Javascript
JavaScript中全选、全不选、反选、无刷新删除、批量删除、即点即改入库(在yii框架中操作)的代码分享
2016/11/01 Javascript
JS焦点图,JS 多个页面放多个焦点图的实例
2016/12/08 Javascript
JavaScript解析JSON格式数据的方法示例
2017/01/24 Javascript
微信小程序 图片宽度自适应的实现
2017/04/06 Javascript
JS实现的合并多个数组去重算法示例
2018/04/11 Javascript
Vue CLI3基础学习之pages构建多页应用
2019/06/02 Javascript
原生js实现商品筛选功能
2019/10/28 Javascript
Node如何后台数据库使用增删改查功能
2019/11/21 Javascript
详解Vue.js3.0 组件是如何渲染为DOM的
2020/11/10 Javascript
Python实现模拟登录及表单提交的方法
2015/07/25 Python
使用Python神器对付12306变态验证码
2016/01/05 Python
Python实现二叉堆
2016/02/03 Python
windows下python之mysqldb模块安装方法
2017/09/07 Python
使用tensorflow实现AlexNet
2017/11/20 Python
python实现超市扫码仪计费
2018/05/30 Python
python实现Flappy Bird源码
2018/12/24 Python
利用python控制Autocad:pyautocad方式
2020/06/01 Python
Django restful framework生成API文档过程详解
2020/11/12 Python
详解Python中list[::-1]的几种用法
2020/11/16 Python
巧克力领导品牌瑞士莲美国官网:Lindt Chocolate美国
2016/08/25 全球购物
婴儿鞋,独特的婴儿服装和配件:Zutano
2018/11/03 全球购物
函授大专自我鉴定
2013/11/01 职场文书
机械专业毕业生推荐信范文
2013/11/25 职场文书
人事专员的岗位职责
2014/03/01 职场文书
大学生入党积极分子自我评价
2014/09/20 职场文书