路由参数

  1. 设置路由的时候,可以设置第三个数组参数,主要实施匹配检测和行为执行;
    2. ext 参数作用是检测 URL 后缀,比如:我们强制所有 URL 后缀为.html;
    1. Route::get('details/:id', 'address/details', ['ext'=>'html']);
    2. ...['ext'=>'html|shtml']
    3. //支持多个
  2. 第三数组参数也可以作为对象的方法存在,比如改下成如下形式;
    1. Route::get('details/:id', 'address/details')->ext('html');
  3. https 参数作用是检测是否为 https 请求,结合 ext 强制 html 如下;
    1. Route::get('details/:id', 'address/details', ['ext'=>'html', 'https'=>true]);
    2. Route::get('details/:id', 'address/details')->ext('html')->https();
  4. 如果想让全局统一配置 URL 后缀的话,可以在 app.php 中设置;
    1. //设置 false 为禁止后缀,空允许所有后缀
    2. 'url_html_suffix' => 'html',
  5. denyExt 参数作用是禁止某些后缀的使用;
    1. Route::get('details/:id', 'address/details')->denyExt('gif|jpg|png');
  6. filter 参数作用是对额外参数进行检测;
    1. Route::get('details/:id', 'address/details')->filter('id', 10);
  7. model 参数作用是绑定到模型,第三参数设置 false 避免异常,也可以多参数;
    1. Route::get('user/:id', 'address/getUser')->model('id', '\app\model\User');
    2. ...->model('id', '\app\model\User',false);
    3. Route::get('user/:id/:name'...->model('id&name', '\app\model\User');
  8. option 参数作用是全局的路由进行配置,且可以多次调用;
    1. Route::>option('ext', 'html')->option('https', true);

    快捷路由

  9. 快捷路由可以快速给控制器注册路由,还可以更加不同的请求类型设置前缀;
    1. Route::controller('short', 'Short');
  10. 快捷路由控制器和方法的编写原则,给方法前面加上 get 或 post 等请求类型;
    1. class Short extends Controller {
    2. public function index()
    3. {
    4. return 'index';
    5. }
    6. public function getInfo()
    7. {
    8. return 'getInfo';
    9. }
    10. public function getList()
    11. {
    12. return 'getList';
    13. }
    14. public function postInfo()
    15. {
    16. return 'postInfo';
    17. }
    18. }