lavarel

 

路由的使用

 

composer create-project laravel/laravel learnlaravel5    在命令框里下载

/**
 * 一.简单路由
 * Laravel 中最简单的路由由一个 URI 和一个闭包调用组成。
 * 构造方法有: Route::get、Route::post、Route::put、
 *                 Route::patch、Route::delete、Route::options、
 *                 Route::any、Route::match、Route::resource、
 *                 Route::resources、Route::group
 * Route::get('login', '控制器类名称@方法');
 *as=‘academy’就是定义变量名为profile
 *简单路由  返回'Hello LaravelAcademy!'
 **/
 Route::get('/hello/laravelacademy',['as'=>'academy',function(){
     return 'Hello LaravelAcademy!';
 }]);

/**
 * 一.1.根据as指向的路由
 *输出as指向的路由   http://www.kimen.com/public/hello/laravelacademy
 */
 Route::get('/testNamedRoute',function(){
    return route('academy');
 });
/**
 * 一.2
 *访问http://www.kimen.com/public/testNamedRoute 跳转至
 *http://www.kimen.com/public/hello/laravelacademy
 *并输出内容
 */
 Route::get('/testNamedRoute',function(){
     return redirect()->route('academy');
 });
/**
 * 二.路由带参数访问
 * 访问http://www.kimen.com/public/testNamedRoute
 *跳转http://www.kimen.com/public/hello/laravelacademy/3
 *带参数的路由输出 'Hello LaravelAcademy $id!'
 */
 Route::get('/hello/laravelacademy/{id}',['as'=>'academy',function($id){
     return 'Hello LaravelAcademy '.$id.'!';
 }]);
/*
 *测试参数路由
 */
 Route::get('/testNamedRoute',function(){
     return redirect()->route('academy',['id'=>2]);
 });

/**
 * 三.路由分组
 */
 Route::group(['as' => 'admin::'], function () {
   /*
    *根据get中as指向的参数输出该跳转地址
    *http://www.kimen.com/public/dashboard
    */
     Route::get('str', ['as' => 'dashboard', function () {}]);
     Route::get('/testNamedRoute',function(){
       return route('admin::dashboard');
   });
   /*
    *根据get中as指向的参数输出该跳转地址
    *http://www.kimen.com/public/index
    */
     Route::get('index', ['as' => 'index', function () {}]);

   Route::get('/test',function(){
       return route('admin::index');
   });
 });

/**
 * 四.运用中间件使用路由
 * 在Laravel中,中间件的实现其实是依赖于Illuminate\Pipeline\Pipeline这个类实现的
 * 在cmd 项目根目录运行
 * php artisan make:middleware wMiddleware
 * 生成测试用户的中间件
 * 需更改配置文件
 *'test'为中间件的命名
 * /app/Http/Kernal.php文件,新增TestMiddleware到Kernel的$routeMiddleware属性:
 * protected $routeMiddleware = [
 *   'auth' => \App\Http\Middleware\Authenticate::class,
 *   'auth.basic' => \Illuminate\Auth\Middleware\AuthenticateWithBasicAuth::class,
 *   'guest' => \App\Http\Middleware\RedirectIfAuthenticated::class,
 *   'test' => \App\Http\Middleware\TestMiddleware::class,
 * ];
 *
 * 使用中间件定义路由
 * 根据年龄参数  判断是否能能进行访问
 */
 Route::group(['middleware'=>'test'],function(){
   /**
    * 访问http://www.kimen.com/public/write/laravelacademy?age=15
    */
     Route::get('/write/laravelacademy',function(){
       return "成功进入";
         //使用Test中间件
     });
     /**
    * 访问http://www.kimen.com/public/update/laravelacademy?age=15
    */
     Route::get('/update/laravelacademy',function(){
       return "成功进入";
        //使用Test中间件
     });
 });
 Route::get('/age/refuse',['as'=>'refuse',function(){
     return "未成年人禁止入内!";
 }]);


/*
*五.路由前缀
*该路由群组统一前缀
*http://www.kimen.com/public/laravelacademy/update
*/
 Route::group(['prefix'=>'laravelacademy'],function(){
     Route::get('write',function(){
         return "Write LaravelAcademy";
     });
     Route::get('update',function(){
         return "Update LaravelAcademy";
     });
 });
/*
*路由前缀加参数
*该路由群组统一前缀  可加参数
*http://www.kimen.com/public/laravelacademy/'自定义'/update
*/
 Route::group(['prefix'=>'laravelacademy/{version}'],function(){
     Route::get('write',function($version){
         return "Write LaravelAcademy {$version}";
     });
     Route::get('update',function($version){
         return "{$version}";
     });
 });


/**
 *六.子域名
 *子域名可以通过domain关键字来设置:
 */
 Route::group(['domain'=>'{service}.kimen.com'],function(){
   /**
    * 根据域名访问以下路由
    * http://www.kimen.com/public/write/laravelacademy
    */
     Route::get('/write/laravelacademy',function($service){
         return "Write FROM {$service}.kimen.com";
     });
     /**
    * 根据域名访问以下路由
    * http://www.kimen.com/public/update/laravelacademy
    */
     Route::get('/update/laravelacademy',function($service){
         return "Update FROM {$service}.kimen.com";
     });
 });
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值