【发布时间】:2014-10-24 21:43:30
【问题描述】:
在我正在构建的一个应用程序中,我有可变数量的文本输入(在线测验中的填空问题,具有可变数量的空白)。名称中需要标识问题ID,因为空白信息也需要回传。我还有一些用下划线标识的隐藏验证输入(根据存储在服务器上的值检查的 nonce 和 formID,如果这些值是通过 javascript 发送的,则会有一个额外的值来标记系统以发送回 JSON)。
因此,为了过滤系统值和我需要的问题的 ID,我使用了正则表达式(效果很好)。
目前我正在使用类似于以下的代码获取我的值:
function input_filter_post($regexfilter,$escapetype,$options) {
$keys = array_keys($_POST);
$return = array();
foreach($keys as $key) {
if (preg_match($regexfilter,$key)) {
$return[$key] = filter_input(INPUT_POST,$key,$escapetype,$options);
}
}
return $return
}
请注意,我需要使用$_POST 来查找数组键。但是,对于我的实际应用程序,我想取消设置$_POST 以强制使用filter_input。有什么方法可以在不使用$_POST 的情况下从$_POST 检索密钥?
【问题讨论】: