ThinkPHP5 批量注册路由

来源:互联网 发布:java需求分析 编辑:程序博客网 时间:2024/06/03 17:16
批量注册路由
批量注册路由规则可以使用两种方式,包括方法注册和路由配置定义。
批量注册
如果不希望一个个注册,可以使用批量注册,规则如下:
Route::rule([
'路由规则1'=>'路由地址和参数',
'路由规则2'=>['路由地址和参数','匹配参数(数组)','变量规则(数组)']
...
],'','请求类型','匹配参数(数组)','变量规则');
如果在外面和规则里面同时传入了匹配参数和变量规则的话,路由规则定义里面的最终生效,但请求类型参

数以最外层决定,例如:

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



use think\Route;
/*
Route::rule([
    '路由规则1'=>'路由地址和参数',
    '路由规则2'=>['路由地址和参数','匹配参数(数组)','变量规则(数组)']
    ...
],'','请求类型','匹配参数(数组)','变量规则');
*/
Route::rule([
    'news/create$' => 'index/News/create',                                // create  GET     http://contoso.org/news/create
    'news/:id/edit$' => ['index/News/edit',[],['id'=>'\d+']],             // edit    GET     http://contoso.org/news/100/edit
    'news/:id$' => ['index/News/read',[],['id'=>'\d+']],                  // read    GET     http://contoso.org/news/100
    'news$' => 'index/News/index',                                        // index   GET     http://contoso.org/news
    'blogs/create$' => 'index/Blog/create',                               // create  GET     http://contoso.org/blogs/create
    'blogs/:blog_id/edit$' => ['index/Blog/edit',[],['blog_id'=>'\d+']],  // edit    GET     http://contoso.org/blogs/100/edit
    'blogs/:blog_id$' => ['index/Blog/read',[],['blog_id'=>'\d+']],       // read    GET     http://contoso.org/blogs/100
    'blogs$' => 'index/Blog/index',                                       // index   GET     http://contoso.org/blogs
],'','GET');

Route::rule([
    'news$' => 'index/News/save',    // save    POST    http://contoso.org/news
    'blogs$' => 'index/Blog/save',   // save    POST    http://contoso.org/blogs
],'','POST');

Route::rule([
    'news/:id$' => ['index/News/update',[],['id'=>'\d+']],             // update  PUT     http://contoso.org/news/100
    'blogs/:blog_id$' => ['index/Blog/update',[],['blog_id'=>'\d+']],  // update  PUT     http://contoso.org/blogs/100
],'','PUT');

Route::rule([
    'news/:id$' => ['index/News/delete',[],['id'=>'\d+']],             // delete  DELETE  http://contoso.org/news/100
    'blogs/:blog_id$' => ['index/Blog/delete',[],['blog_id'=>'\d+']],  // delete  DELETE  http://contoso.org/blogs/100
],'','DELETE');



use think\Route;

Route::get([
    'news/create' => 'index/News/create',                                // create  GET     http://contoso.org/news/create
    'news/:id/edit' => ['index/News/edit',[],['id'=>'\d+']],             // edit    GET     http://contoso.org/news/100/edit
    'news/:id' => ['index/News/read',[],['id'=>'\d+']],                  // read    GET     http://contoso.org/news/100
    'news' => 'index/News/index',                                        // index   GET     http://contoso.org/news
    'blogs/create' => 'index/Blog/create',                               // create  GET     http://contoso.org/blogs/create
    'blogs/:blog_id/edit' => ['index/Blog/edit',[],['blog_id'=>'\d+']],  // edit    GET     http://contoso.org/blogs/100/edit
    'blogs/:blog_id' => ['index/Blog/read',[],['blog_id'=>'\d+']],       // read    GET     http://contoso.org/blogs/100
    'blogs' => 'index/Blog/index',                                       // index   GET     http://contoso.org/blogs
]);

Route::post([
    'news' => 'index/News/save',    // save    POST    http://contoso.org/news
    'blogs' => 'index/Blog/save',   // save    POST    http://contoso.org/blogs
]);

Route::put([
    'news/:id' => ['index/News/update',[],['id'=>'\d+']],             // update  PUT     http://contoso.org/news/100
    'blogs/:blog_id' => ['index/Blog/update',[],['blog_id'=>'\d+']],  // update  PUT     http://contoso.org/blogs/100
]);

Route::delete([
    'news/:id' => ['index/News/delete',[],['id'=>'\d+']],             // delete  DELETE  http://contoso.org/news/100
    'blogs/:blog_id' => ['index/Blog/delete',[],['blog_id'=>'\d+']],  // delete  DELETE  http://contoso.org/blogs/100
]);


原创粉丝点击