原文出处: nikic 译文出处:oschina - 几点人, Khiyuan, 杨少瑜, 蒋锴, TigaPile PHP 5.5 一个比较好的新功能是实现对生成器和协同程序的支持。对于生成器,PHP的文档和各种其他的博客文章(就像这一篇或这一篇)已经有了非常详细的讲解。协同程序相对受到的关注就少了,所以协同程序虽然有很强大的功能但也很难被知晓,解释起来也比较困难。这篇文章指导你通过使用协同程序来实施任务调度,通过实例实现对技术的理解。我将在前三节做一个简单的背景介绍。如果你已经有了比较好的基础,可以直接跳到“协同多任务处理”一节。生成器生成器最基本的思想也是一个函数,这个函数的返回值是依次输出,而不是只返回一个单独的值。或者,换句话说,生成器使你更方便的实现了迭代器接口。下面通过实现一个xrange函数来简单说明:1234567891011php functionxrange($start,$end,$step=1){ for($i=$start;$i<=$end;$i+=$step){ yield$i; }} foreach(xrange(1,1000000)as$num){ echo$num,"\n";}上面这个xrange()函数提供了和PHP的内建函数range()一样的功能。但是不同的是range()函数返回
...
继续阅读
(26)