thinkphp 参数传递方式(基础)

我今天下午主要学习了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方式


 
 
 





 
原文地址:https://www.cnblogs.com/fangyinghua/p/7400328.html