@@ -154,6 +154,10 @@ SRouter::group('/user', function () {
154154 echo 'hello. you access: /user/index';
155155 });
156156});
157+
158+ // 使用 控制器
159+ SRouter::get('/', app\controllers\HomeController::class);
160+ SRouter::get('/index', 'app\controllers\HomeController@index');
157161```
158162
159163> 如果配置了 ` 'ignoreLastSep' => true ` , '/index' 等同于 '/index/'
@@ -358,10 +362,10 @@ $dispatcher->on('notFound', function ($uri) {
358362通过` @ ` 符号连接控制器类和方法名可以指定执行方法。
359363
360364``` php
361- SRouter::get('/', app\controllers\Home ::class);
365+ SRouter::get('/', app\controllers\HomeController ::class);
362366
363- SRouter::get('/index', 'app\controllers\Home @index');
364- SRouter::get('/about', 'app\controllers\Home @about');
367+ SRouter::get('/index', 'app\controllers\HomeController @index');
368+ SRouter::get('/about', 'app\controllers\HomeController @about');
365369```
366370
367371> NOTICE: 若第二个参数仅仅是个 类,将会尝试执行通过 ` defaultAction ` 配置的默认方法
@@ -373,11 +377,11 @@ SRouter::get('/about', 'app\controllers\Home@about');
373377> NOTICE: 使用动态匹配控制器方法, 应当使用 ` any() ` 添加路由. 即此时无法限定请求方法 ` REQUEST_METHOD `
374378
375379``` php
376- // 访问 '/home/test' 将会执行 'app\controllers\Home ::test()'
377- SRouter::any('/home/{any}', app\controllers\Home ::class);
380+ // 访问 '/home/test' 将会执行 'app\controllers\HomeController ::test()'
381+ SRouter::any('/home/{any}', app\controllers\HomeController ::class);
378382
379383// 可匹配 '/home', '/home/test' 等
380- SRouter::any('/home[/{name}]', app\controllers\Home ::class);
384+ SRouter::any('/home[/{name}]', app\controllers\HomeController ::class);
381385```
382386
383387> NOTICE: 上面两个的区别是 第一个无法匹配 ` /home `
@@ -392,16 +396,16 @@ SRouter::any('/home[/{name}]', app\controllers\Home::class);
392396示例:
393397
394398``` php
395- // 访问 '/user', 将会调用 app\controllers\User ::run('')
396- SRouter::get('/user', 'app\controllers\User ');
399+ // 访问 '/user', 将会调用 app\controllers\UserController ::run('')
400+ SRouter::get('/user', 'app\controllers\UserController ');
397401
398- // 访问 '/user/profile', 将会调用 app\controllers\User ::run('profile')
399- SRouter::get('/user/profile', 'app\controllers\User ');
402+ // 访问 '/user/profile', 将会调用 app\controllers\UserController ::run('profile')
403+ SRouter::get('/user/profile', 'app\controllers\UserController ');
400404
401405// 同时配置 'actionExecutor' => 'run' 和 'dynamicAction' => true,
402- // 访问 '/user', 将会调用 app\controllers\User ::run('')
403- // 访问 '/user/profile', 将会调用 app\controllers\User ::run('profile')
404- SRouter::any('/user[/{name}]', 'app\controllers\User ');
406+ // 访问 '/user', 将会调用 app\controllers\UserController ::run('')
407+ // 访问 '/user/profile', 将会调用 app\controllers\UserController ::run('profile')
408+ SRouter::any('/user[/{name}]', 'app\controllers\UserController ');
405409```
406410
407411## 开始路由匹配和调度
0 commit comments