午夜91福利视频,午夜成人在线观看,午夜在线视频免费观看,午夜福利短视频,精品午夜成人免费视频APP

批量注冊

 批量注冊路(lu)由(you)規則可以(yi)使(shi)用兩種(zhong)方式,包括方法注冊和(he)路(lu)由(you)配置定(ding)義。

批量注冊

如果不希(xi)望(wang)一個個注冊,可(ke)以使用批(pi)量注冊,規則如下:

Route::rule([
'路(lu)由(you)規則1'=>'路由(you)地址和參數',
'路由(you)規(gui)則2'=>['路由地址和參(can)數','匹配(pei)參數(shu)(數(shu)組)','變量規則(ze)(數組)']
...
],'','請求類型','匹(pi)配參(can)數(shu)(數(shu)組)','變量規則');

如(ru)果(guo)在外面(mian)和(he)(he)規則(ze)里面(mian)同時傳入了匹配參(can)(can)數和(he)(he)變量(liang)規則(ze)的話,路(lu)由(you)規則(ze)定義里面(mian)的最(zui)終生效,但請求類型參(can)(can)數以最(zui)外層決定,例如(ru):

Route::rule([
    'new/:id'  =>  'News/read',
    'blog/:id' =>  ['Blog/update',['ext'=>'shtml'],['id'=>'\d{4}']],
    ...
],'','GET',['ext'=>'html'],['id'=>'\d+']);

以上的路由注冊,最終blog/:id只會在匹配shtml后綴的訪問請求,id變量的規則則是 \d{4}

如果(guo)不同(tong)的(de)請求(qiu)類型的(de)路由(you)規則是一樣的(de),為了避免數組索引沖突的(de)問題,請使用單獨的(de)請求(qiu)方法定義路由(you)。

同樣,我們(men)也可以使(shi)用其(qi)他幾個(ge)注冊方法進行批量注冊。

// 批(pi)量注冊(ce)GET路(lu)由(you)
Route::get([
    'new/:id'  =>  'News/read',
    'blog/:id' =>  ['Blog/edit',[],['id'=>'\d+']]
    ...
]);
// 效果等同(tong)于
Route::rule([
    'new/:id'  =>  'News/read',
    'blog/:id' =>  ['Blog/edit',[],['id'=>'\d+']]
    ...
],'','GET');

定義路由配置文件

除了支持動態注冊,也可以直接在應用目錄下面的route.php 的最后通過返回(hui)數組(zu)的方式直接定義路由規則,內容(rong)示例如下:

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

路由配置文件定義的路由規則效果和使用any注冊路由規則一樣。

路由動態注冊和配置定義的方式可以共存,例(li)如:

use think\Route;

Route::rule('hello/:name','index/index/hello');

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

默認情況下,只會加載一個路由配置文件route.php,如果你需要定義多個路由文件,可以修改route_config_file配置參數,例如:

// 定義(yi)路(lu)由配(pei)置文(wen)件(數(shu)組)
'route_config_file' =>  ['route', 'route1', 'route2'],

如果存在相同(tong)的路由規則,一樣可以參考(kao)前面的批量注冊方(fang)式(shi)進行定義(yi)。

由(you)于檢測機制問題,動態(tai)注冊的(de)(de)性能比路由(you)配置要高(gao)一些,尤其是多種請(qing)求類(lei)型混合(he)定義的(de)(de)時候。

文檔最后更新時間:2018-04-25 18:15:42

文檔
目錄

深色
模(mo)式

切換
寬度