【发布时间】:2013-11-15 22:26:23
【问题描述】:
function yielding()
{
for ($i = 0; $i < 10; $i++) {
var_dump(yield);
}
}
$y = yielding();
foreach ($y as $val) {
$y->send('foo');
}
输出:
string(3) "foo"
NULL
string(3) "foo"
NULL
string(3) "foo"
NULL
string(3) "foo"
NULL
string(3) "foo"
我预计输出是:10 次 string(3) "foo",但输出是 1 次 NULL 和 1 次 string(3) "foo"(9 次)。为什么?
generator->send() 会跳过一次迭代吗?
【问题讨论】: