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 字符串函数收集
Mar 29 PHP
PHP 数据结构 算法描述 冒泡排序 bubble sort
Jul 10 PHP
JSON在PHP中的应用介绍
Sep 08 PHP
深入php多态的实现详解
Jun 09 PHP
php之Memcache学习笔记
Jun 17 PHP
destoon切换城市后实现logo旁边显示地区名称的方法
Aug 21 PHP
Zend Framework教程之Zend_Config_Ini用法分析
Mar 23 PHP
php+redis实现商城秒杀功能
Nov 19 PHP
PHP生成随机码的思路与方法实例探索
Apr 11 PHP
php中isset与empty函数的困惑与用法分析
Jul 05 PHP
关于laravel框架中的常用目录路径函数
Oct 23 PHP
Laravel框架基础语法与知识点整理【模板变量、输出、include引入子视图等】
Dec 03 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
PHP4实际应用经验篇(5)
2006/10/09 PHP
linux下安装php的memcached客户端
2014/08/03 PHP
Windows2003下php5.4安装配置教程(Apache2.4)
2016/06/30 PHP
php post json参数的传递和接收处理方法
2018/05/31 PHP
PHP后台备份MySQL数据库的源码实例
2019/03/18 PHP
PHP进阶学习之类的自动加载机制原理分析
2019/06/18 PHP
才发现的超链接js导致网页中GIF动画停止的解决方法
2007/11/02 Javascript
关于删除时的提示处理(确定删除吗)
2013/11/03 Javascript
以JSON形式将JS中Array对象数组传至后台的方法
2014/01/06 Javascript
JS实现判断滚动条滚到页面底部并执行事件的方法
2014/12/18 Javascript
Jquery树插件zTree用法入门教程
2015/02/17 Javascript
JavaScript+html5 canvas实现本地截图教程
2020/04/16 Javascript
javascript经典特效分享 手风琴、轮播图、图片滑动
2016/09/14 Javascript
jQuery 实现双击编辑表格功能
2017/06/19 jQuery
AngularJS实现的根据数量与单价计算总价功能示例
2017/12/26 Javascript
微信小程序实现自上而下字幕滚动
2018/07/14 Javascript
解决echarts的多个折现数据出现坐标和值对不上的问题
2018/12/28 Javascript
详解Vue源码学习之双向绑定
2019/04/10 Javascript
微信小程序网络层封装的实现(promise, 登录锁)
2019/05/08 Javascript
javascript实现的图片预览和上传功能示例【兼容IE 9】
2020/05/01 Javascript
Python中os.path用法分析
2015/01/15 Python
在Python的列表中利用remove()方法删除元素的教程
2015/05/21 Python
Python2随机数列生成器简单实例
2017/09/04 Python
Django框架使用富文本编辑器Uedit的方法分析
2018/07/31 Python
python实现基于朴素贝叶斯的垃圾分类算法
2019/07/09 Python
Python多线程及其基本使用方法实例分析
2019/10/29 Python
使用 Python 写一个简易的抽奖程序
2019/12/08 Python
Python编写一个验证码图片数据标注GUI程序附源码
2019/12/09 Python
Django 后台带有字典的列表数据与页面js交互实例
2020/04/03 Python
使用html5制作loading图的示例
2014/04/14 HTML / CSS
Nike意大利官网:Nike.com IT
2020/01/19 全球购物
银行业务授权委托书
2014/10/10 职场文书
三年级学生评语大全
2014/12/26 职场文书
红歌会主持词
2015/07/02 职场文书
通过shell脚本对mysql的增删改查及my.cnf的配置
2021/07/07 MySQL
SpringBoot 集成短信和邮件 以阿里云短信服务为例
2022/04/22 Java/Android