laravel路由基础说明

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了laravel路由基础说明相关的知识,希望对你有一定的参考价值。

版本laravel 5.5 

Route::get(‘/‘, function () {
    return view(‘welcome‘);
});

//get路由 访问:www.abc.com/public/hello 或者  www.abc.com/server.php/hello
Route::get(‘hello‘,function(){
    return "这个一个GET到简单路由 Hello Word!";
});

//match 多请求路由 访问:www.abc.com/public/matchurl 或者  www.abc.com/server.php/matchurl
Route::match([‘get‘,‘post‘],‘matchurl‘,function(){
    return ‘这是一个多请求路由,可以设置GET、POST等请求类型等‘;
});

//any 所有路由请求 访问:www.abc.com/public/anyurl 或者  www.abc.com/server.php/anyurl
Route::any(‘anyurl‘,function(){
    return ‘任何请求路由‘;
});

//通过POST来提交路由,非URL请求
Route::post(‘dopost‘,function(){
    return ‘这是一个POST路由‘;
});

//路由有传递到参数
Route::get(‘canshu/{id}‘,function($id){
    return ‘传参路由,你传的参数为:‘.$id;
});

//路由有传递到参数带默认值,带正则表达式限制字符
Route::get(‘canshu01/{name?}‘,function($name = ‘sean‘){
    return ‘传递到参数带默认值,正则表达式限制字符,你传的字符(不能为数字)参数为:‘.$name;
})->where(‘name‘, ‘[A-Za-z]+‘);

//路由多参,多默认值,多正则表达式
Route::get(‘canshu02/{id}/{name?}‘,function($id,$name = ‘sean‘){
    return ‘路由多参,多默认值,多正则表达式,你传到第一个数字参数为:‘.$id.‘,你传到具有默认值的参数为:‘.$name;
})->where([‘id‘ => ‘[0-9]+‘, ‘name‘ => ‘[A-Za-z]+‘]);

//路由别名 好处是改来路径,那么用别名调用时也会变,容易维护 as后为别名
Route::get(‘bieming/members‘,[‘as‘=>‘memb‘,function(){
    return ‘这个是一个路由别名,当前到 URL为:‘.route(‘memb‘);
}]);

//路由群组
Route::group([‘prefix‘ => ‘qunzu‘],function(){
    // 访问:www.abc.com/public/qunzu/u/center 或者  www.abc.com/server.php/qunzu/u/center
    Route::get(‘u/center‘,[‘as‘=>‘cent‘,function(){
        return ‘这是访问群组路由时到结果:‘.route(‘cent‘);
    }]);
    
    // 访问:www.abc.com/public/qunzu/anyurl 或者  www.abc.com/server.php/qunzu/anyurl
    Route::any(‘anyurl‘,function(){
        return ‘这是访问群组路由时到结果,简单的any‘;
    });
});

//输出视图路由 访问:www.abc.com/public/qunzu/shitu 或者  www.abc.com/server.php/qunzu/shitu
Route::get(‘shitu‘, function () {
    return view(‘welcome‘);
});

//控制器位置:app\Http\Controllers\下创建控制文件 MemberController.php,创建类 class MemberController extends Controller
//模板根位置:resources\views//模型根位置:app//路由和控制器关联,然后访问 以下两种方式结果相同
Route::get(‘member/info‘,‘[email protected]‘); // [email protected]:表示控制器类名@控制器内方法函数
Route::get(‘member/info2‘,[‘as‘=>‘memberinfo‘,‘uses‘=>‘[email protected]‘]);//路由起来别名,不起则删掉
Route::get(‘member/showview‘,‘[email protected]‘);//调用视图处理
Route::get(‘member/showmode‘,‘[email protected]‘);//控制器方法内调用来模型
Route::get(‘member/dodb‘,‘[email protected]‘);//控制器操作数据库
Route::get(‘member/querys‘,‘[email protected]‘);//控制器操作数据库之查询构造器


//路由和控制器关联,带参数且参数具有正则表达式限制
Route::get(‘member-cs/{id}‘,[‘uses‘=>‘[email protected]‘])->where(‘id‘,‘[0-9]+‘);

 

以上是关于laravel路由基础说明的主要内容,如果未能解决你的问题,请参考以下文章

Laravel 大将之路由模块

Laravel 8 视图不更新路由

php路由的基础[关闭]

Laravel学习基础篇之--路由

监控系统实践第12天:5天上手Laravel8.5之路由篇(1/5)

Laravel中路由基础知识点总结