在这先介绍慕课上的一个Laravel教程
视频地址:
https://www.imooc.com/learn/697
基于官方文档提炼整理,非原创
1、路由在哪?
所有 Laravel 路由都定义在位于 routes 目录下的路由文件中,这些文件通过框架自动加载。routes/web.php 文件定义了web界面的路由,这些路由被分配了web中间件组,从而可以提供session和csrf防护等功能。routes/api.php 中的路由是无状态的,被分配了 api 中间件组。
对大多数应用而言,都是从 routes/web.php 文件开始定义路由。
2.基本路由
Route::get('foo', function () {
return 'Hello World';
});
最基本的 Laravel 路由只接收一个 URI 和一个闭包
3、路由参数
必选参数
Route::get('user/{id}', function ($id) {
return 'User '.$id;
});
可选参数
Route::get('user/{name?}', function ($name = null) {
return $name;
});
Route::get('user/{name?}', function ($name = 'John') {
return $name;
});
正则约束
你可以通过正则表达式约束参数格式和内容
Route::get('user/{name}', function ($name) {
//
})->where('name', '[A-Za-z]+');
Route::get('user/{id}', function ($id) {
//
})->where('id', '[0-9]+');
Route::get('user/{id}/{name}', function ($id, $name) {
//
})->where(['id' => '[0-9]+', 'name' => '[a-z]+']);
4.路由别名
你可以给你定义的任何URL取一条别名,这样你就可以使用别名代替URL
Route::get('user/profile', function () {
//
})->name('profile');
// 使用
route('profile');
// 输出
http://www.xxx.com/user/profile