A-A+

Laravel中路由基础知识点总结

2016年01月21日 路由器高级应用 暂无评论 阅读 2 views 次

在laravel5中,通常在 app/Http/routes.php 中定义应用中的大多数路由,这个文件加载了App\Providers\RouteServiceProvider 类。 大多数基本的 Laravel 路由都只接受一个 URI 和 一个闭包(Closure)参数;

下面是一些基本路由使用方法与解释。

当打开http://localhost:8080时显示/resources/views/vender/welcome.php网页的内容,get表示通过get方法.

  1. Route::get('/', function () {  
  2.    return view('welcome');  
  3. });  
  4.    
  5. Blade::setRawTags('{{', '}}');  
  6.    
  7. //当打开地址为http://localhost:8080/music时,显示function()的内容,即  音乐列表…;  
  8. Route::get('music',function(){  
  9.    return '音乐列表...';  
  10. });  
  11.    
  12. //Route::post('movie',function(){  
  13. //   return '发布电影...';  
  14. //});  

正则表达式:

  1. //http://localhost:8080/movie/12345显示  电影列表12345  
  2. Route::get('movie/{movie_id}',function($movie_id){  
  3.    return '电影列表'.$movie_id;  
  4. })  
  5. //->where('movie_id','[0-9]+'); //表示匹配数字,/movie/后只能是任意数字  
  6. ->where('movie_id','[a-z]+');  //表示匹配字母,/movie/后只能是任意字母  

在路由中将数据指定到视图,传递数据到视图里,方法有几种:

  1. Route::get('movie',function(){  
  2. // ①  returnview('movie.index')->with('user','Edom'); //movie是文件夹,index表示index.php或者index.blade.php;  
  3.  // ②   returnview('movie.index')->withUser('Edom')->withEmail('edom@163.com');  
  4.    ③  $data = array(  
  5.        'user' => 'Edom',  
  6.        'email' => 'edom_Huang@163.com'  
  7.    );  
  8.    $data_block = array(  
  9.        'block_title' => '电影排行榜'  
  10.    );  
  11.    returnview('movie.index',$data)->nest('boxoffice','movie.block.boxoffice',$data_block);//把子视图嵌入到视图里面;nest方法三个参数的意义:①自定义名字②所要导入的php文件存放位置③数据  
  12. });  
标签:

给我留言