首页 话题 小组 问答 好文 用户 我的社区 域名交易 唠叨

[函数]Generator::rewind()函数—用法及示例

发布于 2025-04-26 14:42:41
0
22

函数名:Generator::rewind()

适用版本:PHP 5 >= 5.5.0, PHP 7

用法:Generator::rewind() 函数用于将生成器的内部指针重置到生成器的第一个元素。

示例:

function myGenerator() {
    yield 'apple';
    yield 'banana';
    yield 'orange';
}

$generator = myGenerator();

echo $generator->current(); // 输出:apple

$generator->next();
echo $generator->current(); // 输出:banana

$generator->rewind();
echo $generator->current(); // 输出:apple

在上面的示例中,我们定义了一个生成器函数 myGenerator(),它会依次生成三个水果。

首先,我们创建了一个生成器对象 $generator 并使用 current() 方法获取当前指针所指向的元素,输出结果为 apple

然后,我们使用 next() 方法将指针移动到下一个元素,再次使用 current() 方法获取当前指针所指向的元素,输出结果为 banana

最后,我们使用 rewind() 方法将指针重置到第一个元素,并再次使用 current() 方法获取当前指针所指向的元素,输出结果再次为 apple

注意:rewind() 方法只能在第一次调用生成器之前使用,或者在生成器已经完成迭代后再次使用,否则会抛出一个异常。

评论
一个月内的热帖推荐
啊龙
Lv.1普通用户

9545

帖子

31

小组

3242

积分

赞助商广告
站长交流