博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
【宇润日常疯测-006】Array 和 SplFixedArray 比较
阅读量:6961 次
发布时间:2019-06-27

本文共 648 字,大约阅读时间需要 2 分钟。

  hot3.png

PHP 的精髓就是数组的运用,数组玩得好可以用于所有数据结构。有个叫SPL的好东西,里面有很多数据结构可供我们使用,并且性能也比我们使用数组实现的要好很多。

今天来看看SplFixedArray,顾名思义,固定大小的数组。实例化时,指定数组大小,使用过程中不可对数组进行扩容、缩小。

所以如果你有对数组进行动态操作时,可能就不太适合用它,而且SplFixedArray的索引只能是数字,不可以作为键值数组使用。

下面是测试ArraySplFixedArray的 100W 次读写性能以及内存占用

代码

运行结果

[Array]Memory: 33558608 bytesWrite Time: 0.083034038543701sRead Time: 0.022516965866089s[SplFixedArray]Memory: 16003208 bytesWrite Time: 0.037343978881836sRead Time: 0.022947072982788s

结论

内存占用:SplFixedArrayArray 能节省一半多的内存

写入性能:SplFixedArrayArray 更快

读取性能:五五开,多次测试下来 Array 读取速度甚至更快一些

如果你能确定只需要使用索引数组,并且能预测该数组的成员数,那显然用SplFixedArray更加适合一些。

转载于:https://my.oschina.net/yurun/blog/3002287

你可能感兴趣的文章
一次过反爬虫的过五关斩六将-Ali0th
查看>>
iOS开发小集:指令集的配置
查看>>
python常用内建模块(五)
查看>>
webgl滤镜--旋转的三原色
查看>>
面向对象详解
查看>>
vue2.0构建全栈项目(前后分离实践,vuex的使用)【2】
查看>>
浏览器中的缓存策略
查看>>
「数据游戏」:使用 ARIMA 算法预测三日后招商银行收盘价
查看>>
轻舟助力企业数字化转型进入深水区,网易云荣获“杰出数字化创新企业奖”...
查看>>
区块链里世界系列沙龙(杭州站)第一场
查看>>
[Springboot实战系列]整合ElasticSearch实现数据模糊搜索(Logstash同步Mysql数据)
查看>>
Android应用中,跳转到App的详细设置页面,设置权限页面
查看>>
vsCode源码学习—克隆代码并启动
查看>>
用Java代码批量重命名文件
查看>>
Python 学习笔记之——用 sklearn 对数据进行预处理
查看>>
anyRTC私有云解决方案
查看>>
程序员工资高,却有很多人想转行,理由很简单!
查看>>
react中使用less和全局样式
查看>>
抓包工具 Fiddler4 配置移动设备抓取 Https 请求
查看>>
零基础入门vscode插件开发(以console.log加前缀为例)
查看>>