php生成器的方法getReturn获取生成器迭代完成后的返回值,当生成器迭代完成会将生成器的返回值返回,因此如果迭代器未进行迭代是获取不到值的,如果你没有return值则返回null,
参考代码:
<?php function G1() { $i = 5; while ($i--) { yield $i; } return 110; } $task = G1(); foreach ($task as $item) { var_dump($item); } $return = $task->getReturn(); var_dump($return);
输出结果:
int(4) int(3) int(2) int(1) int(0) int(110)