本文操作环境:Windows10系统、ThinkPHP5版、Dell G3电脑。
thinkphp中i方法的代码是什么
是ThinkPHP众多单字母函数中的新成员,其命名来自于英文Input(输入),主要用于更加方便和安全的获取系统输入变量,可以用于任何地方,用法格式如下:
I(‘变量类型.变量名’,[‘默认值’],[‘过滤方法’])
变量类型是指请求方式或者输入类型,包括:
注意:变量类型不区分大小写。
变量名则严格区分大小写。
默认值和过滤方法均属于可选参数。
用法
我们以GET变量类型为例,说明下I方法的使用:
echo I("get.id"); // 相当于 $_GET["id"]echo I("get.name"); // 相当于 $_GET["name"]
支持默认值:
echo I("get.id",0); // 如果不存在$_GET["id"] 则返回0echo I("get.name",""); // 如果不存在$_GET["name"] 则返回空字符串
采用方法过滤:
echo I("get.name","","htmlspecialchars"); // 采用htmlspecialchars方法对$_GET["name"] 进行过滤,如果不存在则返回空字符串
支持直接获取整个变量类型,例如:
I("get."); // 获取整个$_GET 数组
用同样的方式,我们可以获取post或者其他输入类型的变量,例如:
I("post.name","","htmlspecialchars"); // 采用htmlspecialchars方法对$_POST["name"] 进行过滤,如果不存在则返回空字符串I("session.user_id",0); // 获取$_SESSION["user_id"] 如果不存在则默认为0I("cookie."); // 获取整个 $_COOKIE 数组I("server.REQUEST_METHOD"); // 获取 $_SERVER["REQUEST_METHOD"]
param变量类型是框架特有的支持自动判断当前请求类型的变量获取方式,例如:
echo I("param.id");
如果当前请求类型是GET,那么等效于 $_GET["id"],如果当前请求类型是POST或者PUT,那么相当于获取 $_POST["id"] 或者 PUT参数id。
并且param类型变量还可以用数字索引的方式获取URL参数(必须是PATHINFO模式参数有效,无论是GET还是POST方式都有效),例如:
当前访问URL地址是
http://serverName/index.php/New/2013/06/01
那么我们可以通过
echo I("param.1"); // 输出2013echo I("param.2"); // 输出06echo I("param.3"); // 输出01
事实上,param变量类型的写法可以简化为:
I("id"); // 等同于 I("param.id")I("name"); // 等同于 I("param.name")
推荐学习:《PHP视频教程》
以上就是thinkphp中i方法的代码是什么的详细内容,更多请关注php中文网其它相关文章!