Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/253.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php:使用filter\u输入读取$\u POST-array返回空数组_Php_Arrays_Filter Input - Fatal编程技术网

Php:使用filter\u输入读取$\u POST-array返回空数组

Php:使用filter\u输入读取$\u POST-array返回空数组,php,arrays,filter-input,Php,Arrays,Filter Input,我试图将表单数据作为数组(“newData”)提交到结构中的php应用程序 $_POST['newData'] = array( 1 => array( p1 => 'a', p2 => 'ae', /*etc.*/ ), 2 => array( p1 => /*etc.*/ ) ) 它告诉我print_r()-命令 因为我通常通过filter_input()调用表单数据,所以我在程序中写到: $newData = filter_input(IN

我试图将表单数据作为数组(“newData”)提交到结构中的php应用程序

$_POST['newData'] = array(
    1 => array( p1 => 'a', p2 => 'ae', /*etc.*/ ),
    2 => array( p1 =>  /*etc.*/ )
)
它告诉我print_r()-命令

因为我通常通过filter_input()调用表单数据,所以我在程序中写到:

$newData = filter_input(INPUT_POST, 'newData',
    FILTER_DEFAULT, FILTER_REQUIRE_ARRAY);
但它不包含任何值。 我是否以crong方式使用了filter命令,或者php.ini中是否存在一些我不知道的开关?我在另一台服务器上以同样的方式过滤输入数组的其他程序,这就是我认为这可能是一个问题的原因。

filter\u input
看不到添加到
$\u POST
超全局的数据的原因是
filter\u input
似乎检查原始数据,而不是
$\u POST
中的解析数据。同样的事情也适用于
$\u GET

print(filter\u input(input\u GET,'foo'));//打印“条”
$\u GET['foo']='foo';//设置$\u GET superglobal,但不更改原始请求数据
打印(筛选输入(输入获取“foo”);//仍然返回酒吧
我知道你可能已经解决了这个问题,但我花了相当长的时间才弄明白,我愿意帮助其他人摆脱困境