ThinkChat2.0新版上线,更智能更精彩,支持会话、画图、阅读、搜索等,送10W Token,即刻开启你的AI之旅 广告
## 控制器 为了替代在路由文件中以闭包的形式定义所有的请求处理逻辑,我们使用控制器类来组织这些行为。控制器能将相关的请求处理逻辑组成一个单独的类,控制器被存放在 `app/Http/Controllers` 目录下。 前几节我们通过 `路由 -> 视图`,当我们逻辑、获取数据过多时放在路由里面就不合适了,现在我们以 `路由 -> 控制器 -> 视图` 的方式来代替上节的代码。 ### 创建控制器 通过 Artisan 命令工具里的 `make:controller` 创建一个 `PagesController`: ```php php artisan make:controller PagesController ``` ### 添加三个方法 ```php <?php namespace App\Http\Controllers; use Illuminate\Http\Request; class PagesController extends Controller { public function home() { $codes = [ 'php', 'java', 'javascript', 'C', 'python', '<h1>React</h1>' ]; return view('welcome')->with(compact('codes')); } public function about() { return view('about'); } public function news() { return view('news'); } } ``` ### 修改路由 ```php Route::get('/', 'PagesController@home'); Route::get('/about', 'PagesController@about'); Route::get('/news', 'PagesController@news'); ``` ### 总结 理解 `路由 -> 控制器 -> 视图` 方式创建视图,这是最基本的逻辑方式,新人学习 `Laravel` 按照这个思维来写代码,不管以后多复杂的代码逻辑都是按照这个来衍生。