laravel中的控制器
1、为什么要用laravel中控制器?
因为我们不想在路由文件中以闭包的形式处理请求逻辑,控制器能将相关请求处理逻辑组成一个单独的类,控制器存放在app/Http/Controller目录下。
2、控制器文件的命名与创建命令
命名规则:控制器文件名使用驼峰法进行命名。
两种控制器:
1、一般控制器
php artisan make:controller 控制器名Controller
2、资源控制器
php artisan make:controller 资源控制器名Controller -r
创建一般控制器:
资源控制器
Laravel 资源路由将典型的「CRUD」路由分配给具有单行代码的控制器。比如,你希望创建一个控制器来处理应用保存的「照片」的所有 HTTP 请求。
这个单一路由声明创建多个路由来处理资源上的各种行为。生成的控制器为每个行为保留了方法,包括了关于处理 HTTP 动词和 URIs 的声明注释。
这是它的应用场景。
上述只需给控制器注册一个名称。
Route::resource('login', 'LoginController');
这里的photos就是上述的login。
3、路由访问控制器的方法
Route::请求方法($url,[命名空间])
上面的代码等价于
//逻辑跳转UploadController控制器去执行 //Route::get('upload','User\UploadController@test')->name('upload'); //使用命名组的方式定义命名空间,这个类似于上面这个方法,我们之前学过用组的方式定义路由的前缀 Route::group(['namespace' => 'User'],function(){ Route::get('upload','UploadController@test')->name('upload'); });
如果Route::get $url中有变量,那么在函数中接收到。