PHP7版本post数据对象获取不全bug解决
解决思路:
1、首先想到的是post的限制提交的体积大小,比如php.ini里面的 post_max_size,Nginx里面的client_max_body_size。都对应修改完比较大的值之后,重启fpm、Reload Nginx。但是在此测试还是无效;
2、打印服务器端的$_POST端变量获取还是比较完整,json格式也是正确的。所以可以排除上传因体积限制的问题;
3、搜索发现很多类似的bug,很多笔主提到了php7的ini文件有个max_input_vars 的配置,默认值1000,尝试修改为5000。bug消失;
其他:
1、想来有这个配置,应该是怕客户端请求大量的form字段,fpm在处理需要生成巨大的数组。造成fpm大量申请内存而崩溃。也算是安全性考虑;
2、不修改fpm也有解决方案。就是用字符串拼接方案来替代大量的form字段模式;绕过max input的限制;
以上是 PHP7版本post数据对象获取不全bug解决 的全部内容, 来源链接: utcz.com/z/516222.html