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用户指南-cookies部分
Oct 09 PHP
PHP 进程锁定问题分析研究
Nov 24 PHP
PHP 编写大型网站问题集
May 07 PHP
解析curl提交GET,POST,Cookie的简单方法
Jun 29 PHP
PHP 使用pcntl和libevent 实现Timer功能
Oct 27 PHP
php设计模式之单例模式实例分析
Feb 25 PHP
php中使用sftp教程
Mar 30 PHP
[原创]CI(CodeIgniter)简单统计访问人数实现方法
Jan 19 PHP
thinkphp3.x自定义Action、Model及View的简单实现方法
May 19 PHP
浅谈laravel数据库查询返回的数据形式
Oct 21 PHP
TP5框架实现的数据库备份功能示例
Apr 05 PHP
php+mysql+ajax 局部刷新点赞/取消点赞功能(每个账号只点赞一次)
Jul 24 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
PHP实现用户认证及管理完全源码
2007/03/11 PHP
php无限级评论嵌套实现代码
2018/04/18 PHP
ThinkPHP5.1的权限控制怎么写?分享一个AUTH权限控制
2021/03/09 PHP
JQuery 绑定事件时传递参数的实现方法
2009/10/13 Javascript
jquery.jstree 增加节点的双击事件代码
2010/07/27 Javascript
兼容IE与firefox火狐的回车事件(js与jquery)
2010/10/20 Javascript
JQuery选择器、过滤器大整理
2015/05/26 Javascript
AngularJS Toaster使用详解
2017/02/24 Javascript
详细讲解vue2+vuex+axios
2017/05/27 Javascript
详解在express站点中使用ejs模板引擎
2017/09/21 Javascript
深入理解Angular4订阅(Subscribe)与取消
2017/11/22 Javascript
Vuex 快速入门(简单易懂)
2018/09/20 Javascript
angularJs中$scope数据序列化的实例
2018/09/30 Javascript
Vue-CLI项目中路由传参的方式详解
2019/09/01 Javascript
[37:35]DOTA2上海特级锦标赛A组资格赛#1 Secret VS MVP.Phx第二局
2016/02/25 DOTA
简单介绍Python中的try和finally和with方法
2015/05/05 Python
Python 含参构造函数实例详解
2017/05/25 Python
Python探索之ModelForm代码详解
2017/10/26 Python
pandas使用get_dummies进行one-hot编码的方法
2018/07/10 Python
Python实现繁体中文与简体中文相互转换的方法示例
2018/12/18 Python
Python 堆叠柱状图绘制方法
2019/07/29 Python
Python常用模块os.path之文件及路径操作方法
2019/12/03 Python
python GUI库图形界面开发之PyQt5控件QTableWidget详细使用方法与属性
2020/02/25 Python
Python 实现使用空值进行赋值 None
2020/03/12 Python
ALDO美国官网:加拿大女鞋品牌
2018/12/28 全球购物
DJI全球:DJI Global
2021/03/15 全球购物
RealTek面试题
2016/06/28 面试题
道路交通安全实施方案
2014/03/12 职场文书
工地宣传标语
2014/06/18 职场文书
2014入党积极分子批评与自我批评思想报告
2014/10/06 职场文书
学校党风廉政建设调研报告
2015/01/01 职场文书
统招统分证明
2015/06/23 职场文书
2019让人心动的商业计划书
2019/06/27 职场文书
导游词之开封禹王台风景区
2019/12/02 职场文书
python实现图片批量压缩
2021/04/24 Python
SqlServer数据库远程连接案例教程
2021/07/15 SQL Server