码迷,mamicode.com
首页 > 其他好文 > 详细

第七课 路由之路由注册

时间:2019-02-07 09:29:46      阅读:232      评论:0      收藏:0      [点我收藏+]

标签:upd   序号   cat   htm   sel   png   html   系统   mil   

1 路由注册

定义/概念:

技术图片

技术图片

例子:

(1)动态方法

//Route::get(‘a/:id/:name/‘,‘admin/admin/index‘);
//Route::get(‘test‘,‘index/index/index‘);
//Route::get(‘hello‘, ‘index/hello‘);
Route::get(‘test/:id/:name‘,‘index/index/index‘);
//Route::get(‘test/:name‘,‘admin/admin/index‘);
//Route::rule(‘hello/:name‘,‘index/hello‘,‘get‘,[‘ext‘ => ‘html‘],[‘name‘ => ‘\w+‘]);

(2)配置数组(配置文件方式):

return [
‘info/:name‘ => [‘admin/admin/getUserInfo‘,[‘method‘ =>‘post‘,‘ext‘ => ‘html‘],[‘name‘ => ‘\w+‘]],
‘test‘ => [‘index/index/index‘,[‘method‘ =>‘post‘,‘ext‘ => ‘html‘]],
‘test/:name‘=> [‘admin/admin/index‘,[‘method‘ =>‘post‘,‘ext‘ => ‘html‘],[‘name‘ => ‘\w+‘]]
];

1.1动态方法

路由定义采用 \think\Route 类的 rule 方法注册,通常是在应用的路由配置文件

application/route.php 进行注册,Route 类文件位置如下图:

技术图片

动态方法格式如下:

技术图片

回到route/route.php中

技术图片

技术图片

技术图片

设置请求的要求,改一下路由规则,同时修改index/demo中的方法

技术图片

技术图片

这里我们使用

http://localhost/tp5.1/public/index.php/demo/1  访问会出错

技术图片

加后缀.html 路由中规定的后缀则可以访问

技术图片

当请求的参数为非数字时就会出错

技术图片

通过在route.php中配置的

Route::rule(‘demo/:name‘, ‘index/index/demo‘, ‘GET‘, [‘ext‘ => ‘html‘], [‘name‘ => ‘\d‘]);

就是实现了对demo这个方法的控制

除了使用 Route::rule()创建路由外也可以用 get(),post()等创建路由。以demo()这个 方法测试

post|get(‘路由规则’ , ‘路由地址’ , ‘路由参数’ , ‘变量规则’);

技术图片

当我们使用get的时候 就会发现post请求是不通过,使用get(),post()就是限制请求的方式。

 技术图片

Get请求

技术图片

Route类中的其他方法

Rule() 基本路由注册

Any() 任意请求路由注册

Get() GET请求路由注册

Post() POST请求路由注册

Put() PUT请求路由注册

Patch() PATCH请求路由注册

Delete() DELETE请求路由注册

Alias() 别名路由注册

Group() 路由分组注册

Controller() 控制器方法路由注册

Resource() 资源路由注册

Pattern() 全局路由变量规则注册

1.2配置数组(配置文件方式)

语法规则:

return[

‘路由规则’  =>  ‘路由地址’,

‘路由规则’ => [‘路由地址’  ,[路由参数]  ,[变量规则]]

]

技术图片

回到route/route.php中

技术图片

同样这样设置后 info的访问的方式就必须与之前动态注册demo例子一样

技术图片

1.3路由表达式

技术图片

常用路由表达式实例:

技术图片

1.4 

技术图片

1.5 请求类型

|序号|请求类型|用途|描述

| 1 | GET | 从服务器端获取数据 | 仅查询,不修改,类似:SELECT操作

| 2 | POST | 在服务器端创建数据 | 提交并创建新信息,类似:INSERT操作

| 3 | PUT | 改变服务器端数据 | 仅修改不创建,类似:UPDATE操作

| 4 | DELETE | 删除服务器端资源 | 根据条件删除数据,类似:DELETE

注:***尽管可以在Route::rule()方法中指定请求类型:

Route::rule(‘demo/:name,‘index/index/demo‘,‘GET‘);

但系统还是各种请求类型,定义了快捷方法(静态),详见下表:

技术图片

 

第七课 路由之路由注册

标签:upd   序号   cat   htm   sel   png   html   系统   mil   

原文地址:https://www.cnblogs.com/studyandstudy/p/10354348.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!