函数名称:Generator::next()
适用版本:PHP 5.5.0 及以上版本
用法:Generator::next() 方法用于从生成器中获取下一个生成的值,并将生成器的内部指针向前移动。
示例:
// 定义一个生成器函数
function myGenerator() {
yield 'Apple';
yield 'Banana';
yield 'Cherry';
}
// 创建生成器对象
$generator = myGenerator();
// 获取生成器的下一个值
$value = $generator->next();
echo $value; // 输出:Apple
// 获取生成器的下一个值
$value = $generator->next();
echo $value; // 输出:Banana
// 获取生成器的下一个值
$value = $generator->next();
echo $value; // 输出:Cherry
说明:
- Generator::next() 方法在调用时会从生成器中获取下一个生成的值,并将生成器的内部指针向前移动。
- 调用 Generator::next() 方法之前必须先创建一个生成器对象,并将其赋值给一个变量。
- 每次调用 Generator::next() 方法,都会返回生成器中的下一个值。
- 如果生成器已经到达末尾,即没有更多的值可以生成,调用 Generator::next() 方法将会返回 null。
- 注意,Generator::next() 方法不能在生成器函数内部调用,只能在生成器函数外部调用。
- 通过调用 Generator::next() 方法,可以实现对生成器的控制,逐个获取生成器中的值,直到生成器结束。