一同事,让帮忙解决问题:post了1020条数据,结果只显示250条。
判断可能是php的post设置问题,结果发现php.ini里关于post的设置没有问题。
通过 php://input 得到请求参数是完整的,就是在装入$_POST全局变量时有问题。
本以为很简单解决的问题,找了一个小时的原因。后来查看php这一部分源码看到这句代码:
if (++count > PG(max_input_vars)) {
php_error_docref(NULL TSRMLS_CC, E_WARNING, "Input variables exceeded %ld. To increase the limit change max_input_vars in php.ini.", PG(max_input_vars));
return;
}
猛然间想起来,php5.3.10在解决hash冲突受攻击时,增加了一个配置指令max_input_vars。php.ini中增加这个指令的值即可。
其实,调试时打开php错误报告级别也可以看到有错误提示的。
绕了一大圈。