thinkphp 参数传递方式(基础)

时间:2022-01-26 08:37:10

我今天下午主要学习了thinkphp5.0的路由部分,我下面总结一下我主要学习到的知识点:

路由定义:

有两种方式:

(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方式