全局MISS路由

如果希望在沒(méi)有匹配到所有的路由規(guī)則后執(zhí)行一條設(shè)定的路由,可以使用MISS路由功能,只需要在路由配置文件中定義:

return [
    'new/:id'   => 'News/read',
    'blog/:id'  => ['Blog/update',['method' => 'post|put'], ['id' => '\d+']],
    '__miss__'  => 'public/miss',
];

或者使用miss方法注冊(cè)路由

Route::miss('public/miss');

當(dāng)沒(méi)有匹配到所有的路由規(guī)則后,會(huì)路由到 public/miss路由地址。

分組MISS路由

分組支持獨(dú)立的MISS路由,例如如下定義:

return [
    '[blog]' =>  [
        'edit/:id'  => ['Blog/edit',['method' => 'get'], ['id' => '\d+']],
        ':id'       => ['Blog/read',['method' => 'get'], ['id' => '\d+']],
        '__miss__'  => 'blog/miss',
    ],
    'new/:id'   => 'News/read',
    '__miss__'  => 'public/miss',
];

如果使用group方法注冊(cè)路由的話,可以使用下面的方式:

Route::group('blog',function(){
    Route::rule(':id','blog/read',[],['id'=>'\d+']);
    Route::rule(':name','blog/read',[],['name'=>'\w+']);
    Route::miss('blog/miss');
},['method'=>'get','ext'=>'html']);