PHP生成器简单实例
作者:junjie 时间:2024-05-11 09:52:33
一般你在迭代一组数据的时候,需要创建一个数据,假设数组很大,则会消耗很大性能,甚至造成内存不足。
//Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 32 bytes) in E:\php\test\index.php on line 5
range(1, 100000000);
PHP5.5实现了生成器,每当产生一个数组元素则用yield关键词返回,并且执行函数暂停,当执行函数next方法时,则会从上一次被yield的位置开始继续执行,如下例子,只会产生中间变量$i
function xrange($start, $limit, $step = 1) {
for ($i = $start; $i <= $limit; $i += $step) {
yield $i;
}
}
foreach (xrange(1, 9, 1) as $number) {
echo "$number ";
}
标签:PHP,生成器
0
投稿
猜你喜欢
VueJs监听window.resize方法示例
2024-04-29 13:09:41
浅析Python 抽象工厂模式的优缺点
2021-08-12 01:33:17
PyCharm 常用快捷键和设置方法
2022-04-09 01:40:59
深入探究Go语言从反射到元编程的实践与探讨
2024-05-22 10:28:50
详解vue项目中调用百度地图API使用方法
2024-05-09 09:38:29
PHP中soap的用法实例
2023-11-14 09:40:24
使用 GUID 值来作为数据库行标识讲解
2024-01-24 01:10:24
细谈Mysql的存储过程和存储函数
2024-01-23 11:05:24
完全讲解 使用MSCS建立SQL Server集群
2009-01-19 14:10:00
MySQL InnoDB和MyISAM数据引擎的差别分析
2024-01-25 20:04:43
关于H1的用法探讨
2008-03-18 12:55:00
Python 中导入文本文件的示例代码
2021-04-18 04:53:01
15款非常有用的前端开发CSS网格(grid system)生成器
2009-07-06 13:02:00
Python运行的17个时新手常见错误小结
2023-05-20 00:13:17
python中关于py文件之间相互import的问题及解决方法
2021-08-29 00:29:33
Jupyter Notebook的连接密码 token查询方式
2023-10-21 23:51:47
教你使用一行Python代码玩遍童年的小游戏
2021-05-15 10:14:00
js实现input+select组合 抛砖引玉
2010-08-02 12:34:00
Dreamweaver制作网页幻灯片效果
2010-07-06 13:48:00
Selenium元素定位的30种方式(史上最全)
2023-11-13 17:03:41