看了@轩脉刃 今天出炉的PHP 5.5 新特性。不过没有翻译全,我这里稍微补充下,整理成完整的一篇:)
原文:http://www.php.net/manual/zh/migration55.new-features.php
php5.5通过引入yield关键字来支持generators。Generators提供了一种更加简洁的生成迭代器的方式,无需通过笨重复杂的Iterator接口。
一个简单的示例:利用generators实现和range函数一样的迭代功能
function xrange($start, $limit, $step = 1) { for ($i = $start; $i <= $limit; $i += $step) { yield $i; }}echo 'Single digit odd numbers: ';/* * Note that an array is never created or returned, * which saves memory. */foreach (xrange(1, 9, 2) as $number) { echo "$number ";}echo "n";