PHP数组内存耗用太多问题的解决方法


Posted in PHP onApril 05, 2010

因为这个是语言的问题,常规方案比较难以解决。下面是一种通过string 解决的方案。

$total = 100000; 
$double = ""; 
for ($i = 0; $i < $total; $i++) 
{ 
$double .= pack("d", $i + 0.1); 
} 
for ($i = 0; $i < $total; $i++) 
{ 
unpack("@" . ($i * 8) . "/d", $double); 
}

这个例子用一个string 保存一个double 的数组。然后在使用的时候unpack出来。
当然,这会影响性能。要看具体的需求。

比如这样的情况下:
你有10个数组,每个数组10M (1百万数据左右),那么十个要花费 100M内存。
再加上10个人并发的话,内存就会严重不够了。
然后,在10个数组,不是每次都同时使用的。你可以,把他们保存成string
然后,在使用的时候,unpack某一个string变成一个数组。

PHP 相关文章推荐
PHP新手上路(十四)
Oct 09 PHP
php in_array 函数使用说明与in_array需要注意的地方说明
Apr 13 PHP
PHP __autoload函数(自动载入类文件)的使用方法
Feb 04 PHP
Android ProgressBar进度条和ProgressDialog进度框的展示DEMO
Jun 19 PHP
C/S和B/S两种架构区别与优缺点分析
Oct 23 PHP
php随机生成数字字母组合的方法
Mar 18 PHP
Json_encode防止汉字转义成unicode的方法
Feb 25 PHP
PHP 数组基本操作方法详解
Jun 17 PHP
thinkPHP+PHPExcel实现读取文件日期的方法(含时分秒)
Jul 07 PHP
浅谈PHP中的数据传输CURL
Sep 06 PHP
详谈phpAdmin修改密码后拒绝访问的问题
Apr 03 PHP
PHP 7.1中AES加解密方法mcrypt_module_open()的替换方案
Oct 17 PHP
phpMyadmin 用户权限中英对照
Apr 02 #PHP
使用PHPMYADMIN操作mysql数据库添加新用户和数据库的方法
Apr 02 #PHP
ExtJS与PHP、MySQL实现存储的方法
Apr 02 #PHP
php截取utf-8中文字符串乱码的解决方法
Mar 29 #PHP
php上的memcache和memcached两个pecl库
Mar 29 #PHP
php 字符串函数收集
Mar 29 #PHP
DW中链接mysql数据库时,建立字符集中文出现乱码的解决方法
Mar 27 #PHP
You might like
PHP 和 XML: 使用expat函数(一)
2006/10/09 PHP
PHP实现MySQL更新记录的代码
2008/06/07 PHP
php下pdo的mysql事务处理用法实例
2014/12/27 PHP
php模仿asp Application对象在线人数统计实现方法
2015/01/04 PHP
点击广告后才能获得下载地址
2006/10/26 Javascript
JS代码同步文本框内容的实例方法
2013/07/12 Javascript
jQuery遍历Form示例代码
2013/09/03 Javascript
js调用打印机打印网页字体总是缩小一号的解决方法
2014/01/24 Javascript
简介JavaScript中的setHours()方法的使用
2015/06/11 Javascript
jQuery实现带水平滑杆的焦点图动画插件
2016/03/08 Javascript
JavaScript操作表单实例讲解(上)
2016/06/20 Javascript
jQuery实现腾讯信用界面(自制刻度尺)样式
2017/08/15 jQuery
浅谈angular.js跨域post解决方案
2017/08/30 Javascript
vue移动端监听滚动条高度的实现方法
2018/09/03 Javascript
微信小程序云开发实现数据添加、查询和分页
2019/05/17 Javascript
[03:46]DOTA2英雄基础教程 维萨吉
2013/12/11 DOTA
[56:12]LGD vs Optic Supermajor小组赛D组胜者组决赛 BO3 第一场 6.3
2018/06/04 DOTA
[01:33]PWL开团时刻DAY2-开雾与反开雾
2020/10/31 DOTA
Python Property属性的2种用法
2015/06/21 Python
python paramiko模块学习分享
2017/08/23 Python
Python使用matplotlib绘制正弦和余弦曲线的方法示例
2018/01/06 Python
Python实现字符串的逆序 C++字符串逆序算法
2020/05/28 Python
使用Python实现一个栈判断括号是否平衡
2018/08/23 Python
python3.6使用pickle序列化class的方法
2018/10/22 Python
Python性能分析工具py-spy原理用法解析
2020/07/27 Python
详解如何修改jupyter notebook的默认目录和默认浏览器
2021/01/24 Python
一文彻底解决HTML5页面中长按保存图片功能
2019/06/10 HTML / CSS
Stella McCartney官网:成衣、包袋、香水、内衣、童装及Adidas系列
2018/12/20 全球购物
TCP/IP中的TCP和IP分别承担什么责任
2012/04/21 面试题
村官学习十八大感想
2014/01/15 职场文书
草船借箭教学反思
2014/02/03 职场文书
植树节标语
2014/06/27 职场文书
三八妇女节趣味活动方案
2014/08/23 职场文书
2014年小学德育工作总结
2014/12/05 职场文书
使用Python的开发框架Brownie部署以太坊智能合约
2021/05/28 Python
Go Grpc Gateway兼容HTTP协议文档自动生成网关
2022/06/16 Golang