PHPで大量のパラメータを扱う時はmax_input_varsを変更せよ

自作のPHPアプリでフォームの行数が多いとデータが無視される状況が発生していた。

現象自体は以前から認識していたのだが、原因を追究してみた。

どうもPHP5.3よりデフォルトで受け入れるパラメータの数の制限がかかっている模様で、デフォルトは1000パラメータ。

vi /etc/php.ini

# max_input_varsの値を2000にした
; How many GET/POST/COOKIE input variables may be accepted
max_input_vars = 2000

service httpd restart

php.iniの設定を書き換えて、Apache再起動したら現象は解消した。

カテゴリー: PHP パーマリンク

コメントを残す

メールアドレスが公開されることはありません。

Time limit is exhausted. Please reload the CAPTCHA.