的背景
我正在使用在Nginx上运行的CodeIgniter 2.1.4和PHP 5.3.我有一个HTML表单,表示基本上是同类数据行.每个“行”具有几个< input />字段,每个字段具有相同的名称.这是一个简化的例子:
所以,我有很多firstname []输入,lastname []输入等.提交表单后(操作是POST),我在控制器方法中检索数据(注意我正在使用CodeIgniter):
$firstnames = $this->input->post('firstnames');
$lastnames = $this->input->post('lastnames');
这些变量是包含表单中相应行的值的数组,从这里我对这些数据进行一些处理.
问题
当表单中的行数很大(几百)时,生成的PHP数组的大小与表单中的输入数量不匹配 – 例如,表单可能有200个firstname输入,但$firstname数组只有167.而且,$lastname变量也有不同的大小 – 166.
当表单元素数量较少时,一切正常.
我的理论是,我在堆栈中的某处超出某种最大大小设置或缓冲区,导致表单数据被截断.是否有我不知道的“最大表单大小”的PHP或CodeIgniter或nginx设置?
对于它的价值,当使用application / x-www-form-urlencoded或multipart / form-data作为表单的内容类型时,我看到了相同的行为.
我错过了什么?