【PHP】Formで入力したデータが全て送信されない場合は「max_input_vars」を設定する
POSTで送信するデータ(入力変数)が多いと、一部が送信されない現象がでました。post_max_sizeの設定は問題なかったので検索してみたところmax_input_varsで引っかかっていたようです。max_input_varsとは、入力変数を何個まで受け入れるかの設定です。
POSTできる上限数を増やす
max_input_vars = 2000
問題なく送信できるようになりました。
ちなみにPHPマニュアルのどこで設定を行うのかによると、max_input_varsは変更可能がPHP_INI_PERDIRとなっておりphp.ini.htaccesshttpd.conf.user.iniのどれかで設定しなければならずini_setでは設定できません。
その他の設定
max_input_vars以外にも見直すべき設定として以下があります。
- max_file_uploads
- memory_limit
- post_max_size
- upload_max_filesize