PHP生成器简单实例
PHP生成器简单实例
发布时间:2016-12-29 来源:查字典编辑
摘要:一般你在迭代一组数据的时候,需要创建一个数据,假设数组很大,则会消耗很大性能,甚至造成内存不足。复制代码代码如下://Fatalerror:...

一般你在迭代一组数据的时候,需要创建一个数据,假设数组很大,则会消耗很大性能,甚至造成内存不足。

复制代码 代码如下:

//Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 32 bytes) in E:phptestindex.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教程学习
热门php教程学习
编程开发子分类