2012-04-02 167 views
19

我可以在我的代码中设置max_input_vars PHP.ini指令吗?我已将它设置为默认值1000,但是我有一个脚本,其中有许多复选框和文本字段,可能会超过1000个限制。设置max_input_vars PHP.ini指令使用ini_set

我使用的PHP 5.3.10,我没有得到任何错误这样做。另外,我找不到任何说明我无法做到的文档。

ini_set('max_input_vars', 3000); 

谢谢。

+2

[PHP max \ _input \ _vars]的可能重复(http://stackoverflow.com/questions/10303714/php-max -input-vars) – 2015-12-21 18:40:09

回答

45

max_input_varsPHP_INI_PERDIR可变模式,这意味着它可以不使用ini_set(仅在php.ini,htaccess的或httpd.conf文件)

+8

主要原因是PHP代码开始运行时,指令已经生效。 – 2012-04-02 09:29:42

+7

为将来的读者添加到.htaccess中:php_value max_input_vars 3000 – 2012-12-08 20:15:30

+0

@MichaelCalkins是否可以在.htaccess中使用'php_value max_input_vars 3000'来仅为一个php文件而不是所有? – AldoB 2013-03-20 11:47:37

2

改变我知道很多人避免访问php.ini由于某种原因另一个。所以另一种方法是在操作文件夹中创建一个.htaccess文件并添加以下代码并将值设置为更高的值。只需直接添加无需初始化在.htaccess文件

php_value max_input_vars 3000 
php_value suhosin.get.max_vars 3000 
php_value suhosin.post.max_vars 3000 
php_value suhosin.request.max_vars 3000 

该解决方案为我工作,而无需访问php.ini文件什么。因为当我们想要访问php.ini文件时,某些网络主机提供商给我们一个难的时间