我的$_POST
数组中有一个没有键的变量:(这是来自带name[]
的输入表单。)
var_dump($_POST)
看起来像这样:
array(2) {
["name1"]=>
string(1) "ttt"
["name2"]=>
array(1) {
[0]=>
string(2) "test"
}
}
如何在此阵列上正确使用filter_input_array
?
例如,我需要对所有FILTER_VALIDATE_INT
元素使用name2
。
UPD :print_r
$_POST
:
Array
(
[name1] => ttt
[name2] => Array
(
[0] => test
)
)
答案 0 :(得分:0)
假设您name2
的帖子是这样的:$_POST['name2']=array(0=>"100",1=>20,2=>"test");
然后尝试以下代码。
<?php
$_POST['name2']=array(0=>"100",1=>20,2=>"test");
foreach($_POST['name2'] as $key=>$val){
if (!filter_var($val, FILTER_VALIDATE_INT) === false) {
echo("value is an integer<br>");
} else {
echo("value is not an integer<br>");
}
}
?>
答案 1 :(得分:0)
$args = array(
'name1' => SOME_FILTER // this is for example,
'name2' => array(
'filter' => FILTER_VALIDATE_INT,
'flags' => FILTER_REQUIRE_SCALAR,
),
);
$ myinputs = filter_input_array(INPUT_POST,$ args);
的var_dump($ myinputs); echo“\ n”;