获取get下的id参数
$res = input('get.id');
获取post下的id参数
$res = input('post.id');
trim 过滤空格
public function edit(Request $request)
{
//
//$id = input('id',null,'intval');
$id = $request->get('id', null, 'intval');
halt($id);
return $this->fetch();
}
使用input可以獲取http請求中的參數
但是如果用戶自己定義了input方法,那麽默認的input方法就會失效,因此存在風險,
可以使用Request類來達到同樣的效果
request类input函数调用:
文件中引入think\Request;
在方法中引入,如:public function index(Request $request)
可调用 有:get、post、put、patch、delete、param、request、session、cookie、server、env、path、file
操作:
调用模式:$request->参数类型(key名,key值,函数名);
$request->session('email','imooc@qq.com','trim');
input('patch.sid');
input()可能会引起函数重新定义,推荐使用Request对象获取
request类input函数调用:
文件中引入think\Request;
在方法中引入,如:public function index(Request $request)
可调用 有:get、post、put、patch、delete、param、request、session、cookie、server、env、path、file
操作:
调用模式:$request->参数类型(key名,key值,函数名);
$request->session('email','imooc@qq.com','trim');
input('patch.sid');
dump($request->param('type'));
$res=input('get.id',100,'intval');
dump($request->get('id',10,'intval'));
dump($res);
#get
#post
#param
#session
input('id') , 如果input中没有. 没有? ,点及问号,则默认请求param中的值。
如果get及post都传递了一个名为 id 的值,input('id') 默认取的是post方式的值,为了区分,一般input需要写入get或者post,如 input('get.id') 即可。
如果请求的参数不存在,可以设置一个默认值,如input('get.id'. 150)
如果要强制 数值的类型,可以设置 为 input('get.id' , 100, 'intval') ; 则强制为了整形。
后续开发,还是建议使用 $request->get() 之类的方式,用input可读性不高,同时容易出错。
$request->param(); 会将 get 及 post 方式传递的值都接收。
Request.php有更多可供参考
helper.php中创建函数的方法的值得学习,先判断一下是否存在
tp5用$rquest->param()获取传递过来的参数,如果参数有重复的情况会覆盖,覆盖的规则如下:pathinfo参数会覆盖post中的参数,post中的参数会覆盖get中的参数。
1、input助手函数也是获取对象里面的参数. input('传递方式','参数','对参数过滤')
注意获取请求的参数值,尽可能带上请求的方式,如:input(get.id) ,如果获取的值不存在时,可通过第二个值进行默认值设置,第三个值用来过滤获取的值,例如可将值转换成intval
2、同时也可以通过request对象下的相关方法获取对应的参数或值,来对值进行相关操作
<?php
namespace app\index\controller;
use think\Request;
class Index{
public function index(Request $request){
//dump($request->param());//param方法会返回post,get,pathinfo传递的所有值,即合并
//http://localhost/imooc/public/index/index/index/type/5.html?id=10
//$res = input('get.id');//10
//dump($request->get('id'));//10
//$res = input('post.id','100');//没有则默认100,结果100
//dump($request->post('id','100'));//100
//$res = input('post.id','abc','intval');//没有则默认100,结果100
//dump($request->post('id','100'));//100
#获取类型
//'get', 'post',
//'put', 'patch',
//'delete', 'param',
//'request', 'session',
//'cookie', 'server',
//'env', 'path', 'file'
//通过input助手函数对request中参数进行获取,#建议使用request对象(Request $request)#,避免重复定义相同函数
//$res = input('patch.id');
//session('emial','987@qq.com');
//dump(input('session.emial'));
//dump(input('session.emials','imooc@qq.com'));
//不存在默认imooc
session('ss',' 123 ');
$res = $request->session('ss','','trim');//trim过滤前后空格
dump($res);
}
}
input助手函数 1.可以获取请求的参数和值,并对值进行过滤;注意获取请求的参数值,尽可能带上请求的方式,如:input(get.id) ,如果获取的值不存在时,可通过第二个函数进行默认值设置,第三个函数用来过滤获取的值,可将值进行转换 例如转换成intval
2.同时也可以通过request对象下的相关方法获取对应的参数或值,来对值进行相关操作
在项目开发过程中,获取参数是十分重要的;tp框架为我们提供了input()助手函数来获取传递的各种参数;
input()函数是tp框架中定义的,不是PHP内置函数;同时我们在使用tp框架开发项目的过程中,不应该再定义和input的同名的函数了,否则会和框架中的input()冲突;
同时在入口文件中引用的其他文件中也不应该存在和input同名的自定义函数,否则也会和框架中的input()冲突;tp框架中的所有助手函数都是在thinkphp目录下的helper.php中定义的;
Request.php有更多可供参考
helper.php中创建函数的方法的值得学习,先判断一下是否存在
tp5用$rquest->param()获取传递过来的参数,如果参数有重复的情况会覆盖,覆盖的规则如下:pathinfo参数会覆盖post中的参数,post中的参数会覆盖get中的参数。
1、input助手函数也是获取对象里面的参数. input('传递方式','参数','对参数过滤')
注意获取请求的参数值,尽可能带上请求的方式,如:input(get.id) ,如果获取的值不存在时,可通过第二个值进行默认值设置,第三个值用来过滤获取的值,例如可将值转换成intval
2、同时也可以通过request对象下的相关方法获取对应的参数或值,来对值进行相关操作
<
?php
namespace app\index\controller;
use think\Request;
class Index
{
public function index(Request $request)
{
//dump($request->param());//param方法会返回post,get,pathinfo传递的所有值,即合并
//http://localhost/imooc/public/index/index/index/type/5.html?id=10
//$res = input('get.id');//10
//dump($request->get('id'));//10
//$res = input('post.id','100');//没有则默认100,结果100
//dump($request->post('id','100'));//100
//$res = input('post.id','abc','intval');//没有则默认100,结果100
//dump($request->post('id','100'));//100
#获取类型
//'get', 'post',
//'put', 'patch',
//'delete', 'param',
//'request', 'session',
//'cookie', 'server',
//'env', 'path', 'file'
//通过input助手函数对request中参数进行获取,#建议使用request对象(Request $request)#,避免重复定义相同函数
//$res = input('patch.id');
//session('emial','987@qq.com');
//dump(input('session.emial'));
//dump(input('session.emials','imooc@qq.com'));//不存在默认imooc
session('ss',' 123 ');
$res = $request->session('ss','','trim');//trim过滤前后空格
dump($res);
}
}
Request.php有更多可供参考
helper.php中创建函数的方法的值得学习,先判断一下是否存在
tp5用$rquest->param()获取传递过来的参数,如果参数有重复的情况会覆盖,覆盖的规则如下:pathinfo参数会覆盖post中的参数,post中的参数会覆盖get中的参数。
1、input助手函数也是获取对象里面的参数. input('传递方式','参数','对参数过滤')
注意获取请求的参数值,尽可能带上请求的方式,如:input(get.id) ,如果获取的值不存在时,可通过第二个值进行默认值设置,第三个值用来过滤获取的值,例如可将值转换成intval
2、同时也可以通过request对象下的相关方法获取对应的参数或值,来对值进行相关操作
<?php
namespace app\index\controller;
use think\Request;
class Index
{
public function index(Request $request)
{
//dump($request->param());//param方法会返回post,get,pathinfo传递的所有值,即合并
//http://localhost/imooc/public/index/index/index/type/5.html?id=10
//$res = input('get.id');//10
//dump($request->get('id'));//10
//$res = input('post.id','100');//没有则默认100,结果100
//dump($request->post('id','100'));//100
//$res = input('post.id','abc','intval');//没有则默认100,结果100
//dump($request->post('id','100'));//100
#获取类型
//'get', 'post',
//'put', 'patch',
//'delete', 'param',
//'request', 'session',
//'cookie', 'server',
//'env', 'path', 'file'
//通过input助手函数对request中参数进行获取,建议使用request对象,避免重复定义相同函数
//$res = input('patch.id');
//session('emial','987@qq.com');
//dump(input('session.emial'));
//dump(input('session.emials','imooc@qq.com'));//不存在默认imooc
session('ss',' 123 ');
$res = $request->session('ss','','trim');//trim过滤
dump($res);
}
}
input助手函数 1.可以获取请求的参数和值,并对值进行过滤;注意获取请求的参数值,尽可能带上请求的方式,如:input(get.id) ,如果获取的值不存在时,可通过第二个函数进行默认值设置,第三个函数用来过滤获取的值,可将值进行转换 例如转换成intval
2.同时也可以通过request对象下的相关方法获取对应的参数或值,来对值进行相关操作
不能定义和系统助手函数相同的函数名