您的位置:首页 > 编程学习 > > 正文

laravel5开发规范(laravel5.1框架基础之路由详解)

更多 时间:2021-11-04 19:27:18 类别:编程学习 浏览量:1891

laravel5开发规范

laravel5.1框架基础之路由详解

本文实例讲述了laravel5.1框架基础之路由。分享给大家供大家参考,具体如下:

我在学习Laravel5.1,虽然刚刚开始,认识很浅,但还是需要做做归纳,清晰认识
建议大家到laravel学院学习laravel

1、路由(app/routes.php)

  • 在routes.php中进行路由设置,;
  • 作为访问的统一入口,是控制器的统一调度;
  • 没有配置路由,就没有正确地访问路径;
  • 路由需要自己规定一定的规则,方便自己查看、使用、理解;

2、路由基本类型及使用示例

  • get
  • ?
  • 1
  • Route::get('articles','ArticleController@index');
  • ?
  • 1
  • 2
  • 3
  • 4
  • Route::get('db',function(){
  •   $name = DB::connection()->getDatabaseName();
  •   echo $name;
  • });
    • post
  • ?
  • 1
  • Route::post('article/update','ArticleController@update');
    • match

    匹配[]中的请求方式

  • ?
  • 1
  • 2
  • 3
  • Route::match(['get','post'],'/hello',function(){
  •   return "match";
  • });
    • any

    匹配所有请求方式

  • ?
  • 1
  • 2
  • 3
  • Route::any('/hello',function(){
  •   return "any";
  • });
  • 3、从路由获取参数

    • 必用参数
  • ?
  • 1
  • 2
  • 3
  • Route::get('/blog/{name}',function($name){
  •   return $name; // 返回name显示
  • });
  • 即除了 /blog/{name}的路由类型,都不能进来

    • 可选参数
  • ?
  • 1
  • 2
  • 3
  • Route::get('/blog/{name?}',function($name = 'name'){
  •   return $name; // 返回name显示,如果没设置就取默认值
  • });
  • 即设置了默认值,路由中加了 ? 未输入参数则使用默认值

    • 正则参数

    正则可以更灵活些,匹配更多需求。

  • ?
  • 1
  • 2
  • 3
  • Route::get('/blog/{id?}',function($id="1"){
  •   return "{$id}";//输出blog的ID,
  • })->where('name','^\d+$');//正则匹配为只能是数字,不然将无法找到路由;
    • 参数全局约束

    app/Providers/RouteServiceProviderboot(Router $router)方法作如下修改:

  • ?
  • 1
  • 2
  • 3
  • 4
  • 5
  • public function boot(Router $router)
  • {
  •   $router->pattern('id','^\d+$');
  •   parent::boot($router);//将id全局限制为数字
  • }
  • boot()方法在每个服务提供者(Providers)类中都有用到,将再Providers启动方法执行后执行

    可以通过boot()方法对Providers实现依赖注入

    4、路由还可以做

    给路由起个别名或者分个组
    防CSRF攻击
    Restful风格路由
    详细内容

    X、 app/routes.php 注释翻译(拙劣练习)

    自从开始接触laravel和github发现,越来越难以逃避自己拙劣的英语,我该开始不再畏惧,好好面对,所以开始将laravel源码中出现的英文注释逐步进行翻译,待自己的对框架熟悉时候,再添加自己的中文注释,来强化自己的认识。

  • ?
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • /*
  • |--------------------------------------------------------------------------
  • | Application Routes
  • |--------------------------------------------------------------------------
  • |
  • | Here is where you can register all of the routes for an application.
  • | It's a breeze. Simply tell Laravel the URIs it should respond to
  • | and give it the controller to call when that URI is requested.
  • |
  • */
  • /*
  • |--------------------------------------------------------------------------
  • | 应用路由
  • |--------------------------------------------------------------------------
  • |
  • | 你可以很轻松地在这里注册所有的路由。
  • | 简单地告诉laravel,当特定地址被请求的时候,访问对应的控制器,使地址得到响应。
  • |
  • */
  • 希望本文所述对大家基于Laravel框架的PHP程序设计有所帮助。

    原文链接:https://www.jianshu.com/p/c059993437d1

    标签:Laravel 路由
    您可能感兴趣