laravel框架之路由(route)

路由:将用户的请求按照事先规划的方案提交给指定的控制器或者功能函数来进行处理
通俗的说:就是访问地址的形式
路由配置文件:routes/web.php文件

前情提要:laravel中的项目入口文件在public/index.php

所以路由前都要加index.php,就很烦,看起来很不舒服。

解决:

(1)Apache开启laravel重写路由

           ①加载Apache的Rewrite模块,找到下面的选项,去掉前面的#号注释

LoadModule rewrite_module modules/mod_rewrite.so

        ②允许.htaccess文件重写配置

<Directory "D:/laravel/public/">
    AllowOverride All
</Directory>

然后重启Apache服务器

 

在以下路由中,第二个参数都是回调函数,而在真正的项目中,是不会用到的,而是把路由交给控制器中的方法来处理

Route::get('/test', 'TestController@test');

 

 

 

1.laravel基础路由

//get请求,结果如下图
Route::get('/home',function (){
    return 'get请求';
});
// home为路由,function为回调函数

Route::post('/home',function (){
    return 'post请求';
});

2.多请求路由

//自定义多请求,自定义的请求放在下面的数组中
Route::match(['get','post'],'multy',function(){
    return "多请求路由";
});
//响应所有请求
Route::any('multy2',function (){
    return '响应所有请求';
});

3.路由参数

//必选参数
Route::get('user/{id}',function ($id){
    return '用户的id是'.$id;
});

//可选选参数
Route::get('user/{id?}',function ($id =1){ // 可选参数需要有默认值
    return '用户的id是'.$id;
});

4.路由参数的验证

// 字段验证,名字必须为字母
Route::get('name/{name?}',function ($name = 'Doubly'){
    return '用户名为'.$name;
})->where('name','[A-Za-z]+');



//多个参数,并且带有参数验证,用数组
Route::get('user/{id}/{name?}',function ($id,$name = 'Doubly'){
    return "ID为{$id}的用户名为{$name}";
})->where(['id'=>'\d+','name'=>'[A-Za-z]+']);

5.路由别名(一般没必要,在路由过长时使用)

//路由别名
Route::get('user/help',['as'=>'help',function(){
    return '路由别名:'.route('help');
}]);

6.路由群组

// 以下路由中,都需要加前缀memeber再跟路由访问
Route::group(['prefix'=>'member'],function (){
    Route::get('basic1',function (){
        return '路由群组中的basic1';
    });

    Route::get('basic2',function (){
        return '路由群组中的basic2';
    });
});

7.路由访问视图(项目中,不会用到,简单知道就好)

//路由中输出视图
Route::get('view',function(){
    return view('welcome');
});

8.资源路由

Route::resource('user', 'UserController');

当前路由中UserController中所有方法都可以成为路由

使用方法

{{route('user.create')}} // 路由名.方法名

 

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值