php数组不通过内存吗?

php数组不通过内存吗?

内容导读

收集整理的这篇技术教程文章主要介绍了php数组不通过内存吗?,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含861字,纯文字阅读大概需要2分钟

内容图文

一般来说,PHP数组的内存利用率只有 1/10, 也就是说,一个在C语言里面100M 内存的数组,在PHP里面就要1G。

特别是在PHP作为后台服务器的系统中,经常会出现内存耗费太大的问题。

因为这个是语言的问题,常规方案比较难以解决。下面是一种通过string 解决的方案。(推荐学习:PHP视频教程)

$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数组不通过内存吗?的详细内容,更多请关注Gxl网其它相关文章!

内容总结

以上是为您收集整理的php数组不通过内存吗?全部内容,希望文章能够帮你解决php数组不通过内存吗?所遇到的程序开发问题。 如果觉得技术教程内容还不错,欢迎将网站推荐给程序员好友。

内容备注

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。


本文关键词:

联系我们

在线咨询:点击这里给我发消息

邮件:w420220301@qq.com