位置: 编程技术 - 正文

解决PHP里大量数据循环时内存耗尽的方法(php大量数据处理)

编辑:rootadmin

推荐整理分享解决PHP里大量数据循环时内存耗尽的方法(php大量数据处理),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:解决php里大量数字的方法,解决php里大量数字错误,解决php里大量数字错误,解决php里大量数字的方法,php大量数据处理,php大量数据处理,解决php里大量数字的方法,解决php里大量数据的方法,内容如对您有帮助,希望把文章链接给更多的朋友!

最近在开发一个PHP程序的时候遇到如下一问题:

PHP Fatal error: Allowed memory size of bytes exhausted

错误信息显示允许的最大内存已经耗尽。遇到这样的错误起初让我很诧异,但转眼一想,也不奇怪,因为我正在开发的这个程序是要用一个foreach循环语句在一个有4万条记录的表里全表搜索具有特定特征的数据,也就是说,一次要把4万条数据取出,然后逐条检查每天数据。可想而知,4万条数据全部加载到内存中,内存不爆才怪。

毕竟编程这么多年,我隐约记得PHP里提供有非一次全部加载数据的API,是像处理流媒体那样,随用随取随丢、数据并不会积累在内存的查询方法。经过简单的搜索,果然在官方网站上找到的正确的用法。

这个问题在PHP的官方网站上叫缓冲查询和非缓冲查询(Buffered and Unbuffered queries)。 PHP的查询缺省模式是缓冲模式。也就是说,查询数据结果会一次全部提取到内存里供PHP程序处理。这样给了PHP程序额外的功能,比如说,计算行数,将 指针指向某一行等。更重要的是程序可以对数据集反复进行二次查询和过滤等操作。但这种缓冲查询模式的缺陷就是消耗内存,也就是用空间换速度。

解决PHP里大量数据循环时内存耗尽的方法(php大量数据处理)

相对的,另外一种PHP查询模式是非缓冲查询,数据库服务器会一条一条的返回数据,而不是一次全部返回,这样的结果就是PHP程序消耗较少的内存,但却增加了数据库服务器的压力,因为数据库会一直等待PHP来取数据,一直到数据全部取完。

很显然,缓冲查询模式适用于小数据量查询,而非缓冲查询适应于大数据量查询。

对于PHP的缓冲模式查询大家都知道,下面列举的例子是如何执行非缓冲查询API。

非缓冲查询方法一: mysqli

非缓冲查询方法二: pdo_mysql

非缓冲查询方法三: mysql

以上内容就是小编给大家分享的解决PHP里大量数据循环时内存耗尽的方法,希望对大家有所帮助。

ThinkPHP中SHOW_RUN_TIME不能正常显示运行时间的解决方法 原创 本文实例讲述了ThinkPHP中SHOW_RUN_TIME不能正常显示运行时间的解决方法。分享给大家供大家参考。具体如下:在ThinkPHP的config.php中设置:'SHOW_RUN_TIME'=true;

PHP+Mysql+jQuery文件下载次数统计实例讲解 项目中我们需要统计文件的下载次数,用户每下载一次文件,相应的下载次数加1,类似的应用在很多下载站中用到。本文结合实例使用PHP+Mysql+jQuery,实

PHP+Mysql+jQuery中国地图区域数据统计实例讲解 今天我要给大家介绍在实际应用中,如何把数据载入到地图中。本文结合实例,使用PHP+Mysql+jQuery实现中国地图各省份数据统计效果。本例以统计某产品

标签: php大量数据处理

本文链接地址:https://www.jiuchutong.com/biancheng/275990.html 转载请保留说明!

上一篇:php中删除、清空session的方式总结(php清空数据表)

下一篇:ThinkPHP中SHOW_RUN_TIME不能正常显示运行时间的解决方法 原创

  • 生产调味料用什么手续
  • 个人所得税手续费返还时间
  • 小规模纳税人征税规定
  • 关税税收优惠记忆口诀
  • 个税申报状态失败,如何更正申报
  • 公司没有账目违法吗
  • 文件柜材质
  • 受雇于两家公司个税怎么汇算清缴
  • 企业残保金什么情况下可以减免
  • 补缴工会经费后所得税还要调整吗
  • 小规模纳税人申请电子发票流程
  • 运输企业印花税按什么缴纳
  • 转出未交增值税是借方还是贷方
  • 小规模人力资源外包税率
  • 小规模纳税人小微企业免税销售额
  • 预缴税款是否可以强制执行
  • 未取得房屋产权证的房屋法院可以拍卖吗
  • 诉讼财产保全保险费计算
  • 税务局代开的增值税专票可以红冲吗?
  • 开出支票支付属于什么会计科目
  • 酒店业小规模纳税人可以享受2023年应纳税额抵减政策吗
  • 递延所得税费用为负数是什么意思
  • 中药饮片适用增值税税率
  • 以前年度损益结转到什么科目
  • 电商平台名称怎么注册
  • 运输费未取得运输专用发票怎么抵扣?
  • 变动成本率的计算公式字母
  • 增值税发票自查报告
  • 租赁合同维修义务谁承担
  • 核定征收印花税计算公式
  • 发票的概念
  • 苹果14pro max价格
  • windows资源管理器未响应怎么办
  • 季度交企业所得税是按照什么来交的
  • 期间费用包含哪些
  • 担保公司代偿账户是什么
  • phpqrcode 实例
  • 工业企业成本核算方法
  • 权益的定义特征
  • 委托银行贷款利息收入
  • cssborder虚线边框
  • js怎么注册
  • web主要的请求方式有几种
  • 传统结算工具的不足有
  • 管理费用只能在借方吗
  • 小规模纳税人公转私技巧
  • 公司借给股东的钱金额较大股东可以在年底现金归还吗
  • 交通运输企业有什么优惠政策
  • 深入浅出夏寒陆行全文免费阅读笔趣阁番外
  • mysql查询重复的全部删除
  • 充电桩的安装费是多少
  • 库存商品怎么结转收入
  • 车船税每年都是一样的吗
  • 企业成本计算的依据是什么
  • 自制产品无偿赠送合法吗
  • 年终返利销售政策范本
  • 回购股票并注销是利好吗
  • 超市代销如何分成
  • 个人支付宝开票一年可以开多少
  • 简易征收是什么意思和一般纳税人
  • windows2008教程
  • mac购买建议
  • win8系统win10有什么区别
  • win7系统本身会占用多少空间
  • win8找不到桌面
  • wind7安装
  • 在linux中使用apache发布web服务时默认web站点
  • node 内存泄漏
  • unity 求角度
  • nodejs libuv
  • css 相对定位
  • jquery中删除节点方法
  • jquery旋转动画
  • js link global
  • 广西国家税务总局电子税务局官网
  • 新疆国税局电子税务局
  • 四川税务申报如何网上申报零申报
  • 电子税务局申领的发票怎么读入
  • 国税和地税归哪里管
  • 为什么专利转让要交税
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设