生成器函数
Generator::current
——返回当前产生的值Generator::key
——返回当前产生的键Generator::next
——生成器继续执行Generator::rewind
——重置迭代器Generator::send
——向生成器传入一个值Generator::throw
——向生成器抛入一个异常Generator::valid
——检查迭代器是否被关闭Generator::__wakeup
——序列化回调Generator::getReturn
——获取生成器返回值
生成器
只要方法之中包含yield
,那么这个方法,就是生成器。(不会像其他方法那样执行)
function logger()
{
$r = (yield 'jack');
var_dump($r);
}
$res = logger(); // $res 可迭代对象
var_dump($res->current()); // 必须调用 current 才可以打印