0

我通过JSON array从 jscript 向 PHP发送一个jQuery $.post(). 它是一个 3-4 位数字的表格,大小为 174 x 15(行 x 列)。检查 XHR 帖子时。我可以看到所有的值

pdata[0][]  dates
pdata[0][]  Fund B1
pdata[0][]  Fund B2
pdata[0][]  Fund B3
pdata[0][]  Fund B4
pdata[0][]  Fund B5
pdata[0][]  Fund B6
pdata[0][]  Fund B7
pdata[0][]  Fund B8
pdata[0][]  Fund B9
pdata[0][]  Fund B10
pdata[0][]  Fund B11
pdata[0][]  Fund b12
pdata[0][]  Fund B13
pdata[100][]    4/30/2005
pdata[100][]    -3.16%
pdata[100][]    -3.54%
pdata[100][]    -0.52%

请注意,第一个索引按字母顺序排序,而不是按数字排序。然后我在 PHP 中将该数组处理为

$pdata  = $_POST['pdata']; 
print_r($pdata);

问题是大约一半的数据丢失并且$pdata只有大约 72 个元素(数组)而不是 174 个。我认为它与 PHP 相关post_max_size并将其增加到30Mb,但它没有帮助。

还有什么可以截断数组?

谢谢。

4

4 回答 4

1

max_input_vars是您要查找的指令。

默认情况下,它是 1000,与您的观察结果相匹配(“大约 72 个元素”=> 类似的东西71x14 + 6)。

于 2013-10-01T05:02:56.277 回答
1

我遇到了同样的问题,为了解决这个问题,我将此行添加到我的 htaccess 文件中。

php_value max_input_vars 15000

您可以将 15000 值更改为适合您需要的任何值。

于 2013-10-01T05:12:00.437 回答
0

增加

suhosin.post.max_vars = 2048
suhosin.request.max_vars = 2048

在 php.ini 上并重新启动服务器

您也可以将其添加到您的 .htaccess 文件中(在这种情况下无需重新启动服务器)但为此您必须检查

suhosin.perdir = "p"

在 php.ini 上设置

您可以使用检查 php.ini 配置默认变量

 phpinfo();
于 2013-10-01T05:08:44.410 回答
0

我想建议您增加以下值php.ini

post_max_size = 200M
upload_max_filesize = 200M

您可以设置适合您需要的值。

注意:更改中的设置后需要重新启动服务器php.ini

于 2013-10-01T05:13:40.693 回答