zl程序教程

您现在的位置是:首页 >  .Net

当前栏目

Thinkphp5.0 路由

2023-02-18 16:29:10 时间

路由定义:

有两种方式:

(1).动态注册:

eg:
  Route::rule('hello','index/index/hello','GET');

(2)配置式:

eg:
return [
'pattern' => [
'name' => '\w+',
],
'[hello]' => [
':id' => ['index/hello', ['method' => 'get'], ['id' => '\d+']],
':name' => ['index/hello', ['method' => 'post']],
],
];

请求类型:

类型 描述
GET GET请求
POST POST请求
PUT PUT请求
DELETE DELETE请求

  • 任何请求类型

eg:
Route::get('new/:id','News/read'); // 定义GET请求路由规则
Route::post('new/:id','News/update'); // 定义POST请求路由规则
Route::put('new/:id','News/update'); // 定义PUT请求路由规则
Route::delete('new/:id','News/delete'); // 定义DELETE请求路由规则
Route::any('new/:id','News/read'); // 所有请求都支持的路由规则

获取参数的方法 [三种 ]:

1).方法内变量的对应

public function hello($id,$name)
{
echo $id;
echo $name;
}

2).Request对象

Requeset::instance=>param();//获取所有参数[ 结果类型数组],不分请求类型;
Requeset::instance=>param('name');//获取单个参数[即:直接填写变量名即可];
Requeset::instance=>get();//获取?后面的参数;
Requeset::instance=>route();//获取路由里面的参数;
Requeset::instance=>post();//获取post请求参数
eg:
public function hello()
{
$res=Request::instance()->param();
var_dump($res);
}

依赖注入方式
public function hello(Request $request)
{
$res=$request->param();
var_dump($res);
}

3).使用input助手函数

input('param'); //获取所有结果数组
input('param.name'); //获取name
input('get.name'); //获取post方式
input('get.name'); //获取get方式