首页›输入处理›I() 输入来源
I() 输入来源
全局 I() 函数与五种输入来源的取值规则
本页内容
- 五种来源
- 取值规则
- 常见陷阱
五种来源
| 前缀 | 数据源 | 示例 |
|---|---|---|
get | Input::$__GETS($_GET + 路由注入) | I("get.id", 0, "intval") |
post | Input::$__POSTS($_POST + setInputpost) | I("post.email", "", "email") |
json | php://input 解析的 JSON | I("json.data", "", "string") |
server | $_SERVER | I("server.REQUEST_URI") |
request | GET+POST+JSON 合并 | I("request.id", 0, "intval") |
取值规则
- name 以 . 拆分:首段大写匹配来源,其余段为深层 key
- 深层取值用 Kuoqi::getValueBydeep 逐级读取,任何一级缺失返回 null
- 未匹配来源前缀时默认走 request
- 过滤器返回 null → 使用默认值;否则使用过滤后的值
典型用法
$id = I("get.id", 0, "intval"); // GET 参数
$email = I("post.email", "", "email"); // POST 参数
$page = I("request.page", 1, "intval"); // 任意来源
$json = I("json.items", array(), "array");// JSON body
$all = I("request"); // 整个请求数组
$get = I("get"); // 整个 GET 数组常见陷阱
| 写法 | 结果 | 原因 |
|---|---|---|
I("request.") | 恒返回 null | explode 后 key 为 [""],eval 到 $arr[""] |
I("get.") | 恒返回 null | 同上 |
I("post.email", "", "string") | 双引号被转义为 " | string 过滤器转义 " < > |
I("get.text", "", "ignore") | 原始值透传 | ignore 过滤器不处理 |
KuoqiPHP v1.05 · 离线静态文档 · 界面基于 KuoqiUI ·
返回首页