在把Lumen代码迁移到Laravel框架的时候,遇到了一些问题,虽然Lumen是基于Laravel的,但是也有一些不兼容的地方需要注意。在这里整理了一些Lumen和Laravel框架用法上的区别. PS:这次迁移是从Lumen5.1迁移到Laravel5.2版本 路由 一般的路由 Lumen是这样写的 $app->get('/', [ 'uses' => 'IndexController@getIndex' ]); 而Laravel是这样的 Route::get('/', [ 'uses' => 'IndexController@getIndex' ]); 有参数并且需要正则的路由 Lumen: $app->get('/docs/{id:[0-9]+}', [ 'uses' => 'SupportController@getQuestionDetail', 'as' => 'question_detail' ]); Laravel: Route::get('/docs/{id}', [ 'uses' => 'SupportController@getQuestionDetail', 'as' => 'question_detail' ])->where('id', '[0-9]+'); 或者可以直接在RouteServiceProvider里面定义全局正则 public function boot(Router $router) { // $router->pattern('id', '[0-9]+'); parent::boot($router); } Namespace 路由组里面的Namespace Lumen: $app->group(['namespace' => 'App\Http\Controllers\Admin', Laravel: Route::group(['namespace' => 'Admin', 路由多文件 Lumen是在bootstrap/app.php里面: $app->group(['namespace' => 'App\Http\Controllers'], function ($app) { require
Read more