当前位置:首页 > CMS教程 > 其它CMS > 列表

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

发布:smiling 来源: PHP粉丝网  添加日期:2021-12-15 10:18:09 浏览: 评论:0 

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

我在学习Laravel5.1,虽然刚刚开始,认识很浅,但还是需要做做归纳,清晰认识

建议大家到laravel学院学习laravel

1、路由(app/routes.php)

在routes.php中进行路由设置,;

作为访问的统一入口,是控制器的统一调度;

没有配置路由,就没有正确地访问路径;

路由需要自己规定一定的规则,方便自己查看、使用、理解;

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

get

Route::get('articles','ArticleController@index');

  1. Route::get('db',function(){ 
  2.   $name = DB::connection()->getDatabaseName(); 
  3.   echo $name
  4. }); 

post

Route::post('article/update','ArticleController@update');

match

匹配[]中的请求方式

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

any

匹配所有请求方式

  1. Route::any('/hello',function(){ 
  2.   return "any"
  3. }); 

3、从路由获取参数

必用参数

  1. Route::get('/blog/{name}',function($name){ 
  2.   return $name// 返回name显示 
  3. }); 

即除了 /blog/{name}的路由类型,都不能进来

可选参数

  1. Route::get('/blog/{name?}',function($name = 'name'){ 
  2.   return $name// 返回name显示,如果没设置就取默认值 
  3. }); 

即设置了默认值,路由中加了 ? 未输入参数则使用默认值

正则参数

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

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

参数全局约束

在app/Providers/RouteServiceProvider的boot(Router $router)方法作如下修改:

  1. public function boot(Router $router
  2.   $router->pattern('id','^\d+$'); 
  3.   parent::boot($router);//将id全局限制为数字 

boot()方法在每个服务提供者(Providers)类中都有用到,将再Providers启动方法执行后执行

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

4、路由还可以做

给路由起个别名或者分个组

防CSRF攻击

Restful风格路由

详细内容

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

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

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

Tags: laravel5 1路由

分享到: