基本路由
整理自:https://laravel-china.org/docs/laravel/5.5
Route::get('foo', function () {
return 'Hello World';
});
可用的路由方法
Route::get($uri, $callback);
Route::post($uri, $callback);
Route::put($uri, $callback);
Route::patch($uri, $callback);
Route::delete($uri, $callback);
Route::options($uri, $callback);
可响应多个 HTTP 请求的路由
Route::match(['get', 'post'], '/', function () {
//
});
Route::any('foo', function () {
//
});
视图路由,
其中前两个是必填参数,分别是 URL 和视图名称。第三个参数选填,可以传入一个数组,数组中的数据会被传递给视图
Route::view('/welcome', 'welcome');
Route::view('/welcome', 'welcome', ['name' => 'Taylor']);
路由参数(必填+可选)
必填:
Route::get('user/{id}', function ($id) {
return 'User '.$id;
});
可选(价格?就行了):
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]+']);
路由分组
Route::group(['middleware' =>'auth','prefix'=>'notepadapi','namespace'=>'Api'],function (){
Route::any('index','MemController@index') ;
});
资源路由
Route::resource('photos', 'PhotoController');
部分资源路由
Route::resource('photo', 'PhotoController', ['only' => [
'index', 'show'
]]);
Route::resource('photo', 'PhotoController', ['except' => [
'create', 'store', 'update', 'destroy'
]]);
API资源路由
Route::apiResource('photo', 'PhotoController');
路由缓存:
如果你的应用只使用了基于控制器的路由,那么你应该充分利用 Laravel 的路由缓存。使用路由缓存将极大地减少注册所有应用路由所需的时间。某些情况下,路由注册的速度甚至可以快一百倍。要生成路由缓存,只需执行 Artisan 命令 route:cache:
php artisan route:cache
如果你添加了新的路由,你需要生成 一个新的路由缓存。因此,你应该只在生产环境运行 route:cache
命令:
你可以使用 route:clear 命令清除路由缓存:
php artisan route:clear
整理自:https://laravel-china.org/docs/laravel/5.5