php post大量数据时发现数据丢失问题解决方法


Posted in PHP onJune 20, 2015

解决办法:

在php.ini中将max_input_vars调大改为5000就可以了

原因追查:

from的enctype="multipart/form-data"

php版本5.6.6

问题:部分POST数据接收不到

追源代码发现是php中max_input_vars配置造成的;

php post大量数据时发现数据丢失问题解决方法

相关函数为rfc1867_post_handler,如果超过长度,则不会调用safe_php_register_variable来进行变量注册

相关堆栈如下

#0  rfc1867_post_handler (

    content_type_dup=0x7ff85307a5f8 "multipart/form-data; boundary=", '-' <repeats 27 times>, "306141311912057", 

    arg=0x7ff85307ccc0) at /tmp/php-5.6.2/main/rfc1867.c:681

#1  0x00000000007a4bb0 in sapi_handle_post (arg=<value optimized out>) at /tmp/php-5.6.2/main/SAPI.c:185

#2  0x00000000007ab72f in php_default_treat_data (arg=0, str=0x0, destArray=0x7ff85307ccc0)

    at /tmp/php-5.6.2/main/php_variables.c:399

#3  0x0000000000615c91 in mbstr_treat_data (arg=0, str=0x0, destArray=0x0) at /tmp/php-5.6.2/ext/mbstring/mb_gpc.c:69

#4  0x00000000007aa9fb in php_auto_globals_create_post (name=0x7ff852f474f0 "_POST", name_len=5)

    at /tmp/php-5.6.2/main/php_variables.c:741

#5  0x00000000007d63bb in zend_auto_global_init (auto_global=0x196c950) at /tmp/php-5.6.2/Zend/zend_compile.c:6832

#6  0x0000000000808a43 in zend_hash_apply (ht=0x1955cb0, apply_func=0x7d63a0 <zend_auto_global_init>)

    at /tmp/php-5.6.2/Zend/zend_hash.c:641

#7  0x00000000007aaa4e in php_hash_environment () at /tmp/php-5.6.2/main/php_variables.c:702

#8  0x000000000079bb25 in php_request_startup () at /tmp/php-5.6.2/main/main.c:1671

#9  0x00000000008a756d in main (argc=<value optimized out>, argv=<value optimized out>)

    at /tmp/php-5.6.2/sapi/fpm/fpm/fpm_main.c:1887

其中rfc1867_post_handler为php_session_rfc1867_callback

完~

PHP 相关文章推荐
用PHP创建PDF中文文档
Oct 09 PHP
一个程序下载的管理程序(二)
Oct 09 PHP
基于PHP选项与信息函数的使用详解
May 10 PHP
PHP 函数call_user_func和call_user_func_array用法详解
Mar 02 PHP
php实现微信公众平台账号自定义菜单类
Oct 11 PHP
PHP7标量类型declare用法实例分析
Sep 26 PHP
PHP 类与构造函数解析
Feb 06 PHP
学习thinkphp5.0验证类使用方法
Nov 16 PHP
详解php命令注入攻击
Apr 06 PHP
php求斐波那契数的两种实现方式【递归与递推】
Sep 09 PHP
详解Laravel服务容器的绑定与解析
Nov 05 PHP
ThinkPHP5框架中使用JWT的方法示例
Jun 03 PHP
PHP文件生成的图片无法使用CDN缓存的解决方法
Jun 20 #PHP
php简单统计字符串单词数量的方法
Jun 19 #PHP
PHP对文件夹递归执行chmod命令的方法
Jun 19 #PHP
php强制用户转向www域名的方法
Jun 19 #PHP
php自动更新版权信息显示的方法
Jun 19 #PHP
php中Snoopy类用法实例
Jun 19 #PHP
php计算整个目录大小的方法
Jun 19 #PHP
You might like
PHP5 的对象赋值机制介绍
2011/08/02 PHP
PHP框架Swoole定时器Timer特性分析
2014/08/19 PHP
php+html5使用FormData对象提交表单及上传图片的方法
2015/02/11 PHP
PHP正则匹配到2个字符串之间的内容方法
2018/12/24 PHP
HTML颜色选择器实现代码
2010/11/23 Javascript
JS打印gridview实现原理及代码
2013/02/05 Javascript
jQuery 获取URL的GET参数值的小例子
2013/04/18 Javascript
js select option对象小结
2013/12/20 Javascript
JS和函数式语言的三特性
2014/03/05 Javascript
jquery datepicker参数介绍和示例
2014/04/15 Javascript
jquery判断密码强度的验证代码
2020/04/22 Javascript
vuejs开发组件分享之H5图片上传、压缩及拍照旋转的问题处理
2017/03/06 Javascript
Vue-cli中为单独页面设置背景色的实现方法
2018/02/11 Javascript
JavaScript类数组对象转换为数组对象的方法实例分析
2018/07/24 Javascript
jQuery实现的响应鼠标移动方向插件用法示例【附源码下载】
2018/08/28 jQuery
详解在不使用ssr的情况下解决Vue单页面SEO问题
2018/11/08 Javascript
微信小程序保持session会话的方法
2020/03/20 Javascript
基于wxpython开发的简单gui计算器实例
2015/05/30 Python
python动态网页批量爬取
2016/02/14 Python
python的文件操作方法汇总
2017/11/10 Python
TF-IDF算法解析与Python实现方法详解
2017/11/16 Python
pytorch 自定义数据集加载方法
2019/08/18 Python
Python中join()函数多种操作代码实例
2020/01/13 Python
用python打开摄像头并把图像传回qq邮箱(Pyinstaller打包)
2020/05/17 Python
协程Python 中实现多任务耗资源最小的方式
2020/10/19 Python
澳大利亚儿童和婴儿产品在线商店:Lime Tree Kids
2017/10/05 全球购物
儿媳婚宴答谢词
2014/01/14 职场文书
质量保证书范本
2014/04/29 职场文书
教师教学评估方案
2014/05/09 职场文书
团干部培训方案
2014/06/03 职场文书
保护地球的标语
2014/06/17 职场文书
上党课的心得体会
2014/09/02 职场文书
会计工作检讨书
2015/02/19 职场文书
2019年教师节活动策划方案
2019/09/09 职场文书
MySQL kill不掉线程的原因
2021/05/07 MySQL
Android实现获取短信验证码并自动填充
2023/05/21 Java/Android