本文操作环境: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方法的代码是什么的详细内容。