InfiniteIterator 类

(PHP 5 >= 5.1.0, PHP 7, PHP 8)

简介

InfiniteIterator 允许用户无限地迭代一个迭代器,而无需在到达其末尾时手动重新启动迭代器。

类概要

class InfiniteIterator extends IteratorIterator {
/* 方法 */
public __construct(Iterator $iterator)
public next(): void
/* 继承的方法 */
}

目录

添加备注

用户贡献的备注 2 个备注

匿名
11 年前
要循环遍历对象键并重置到开头,请尝试以下方法
<?php

$obj
= new stdClass();
$obj->Mon = "Monday";
$obj->Tue = "Tuesday";
$obj->Wed = "Wednesday";
$obj->Thu = "Thursday";
$obj->Fri = "Friday";
$obj->Sat = "Saturday";
$obj->Sun = "Sunday";

$infinate = new InfiniteIterator(new ArrayIterator($obj));
foreach ( new
LimitIterator($infinate, 0, 14) as $value ) {
print(
$value . PHP_EOL);
}

?>

将输出

Monday
Tuesday
Wednesday
Thursday
Friday
Saturday
Sunday
Monday
Tuesday
Wednesday
Thursday
Friday
Saturday
Sunday

在执行日期操作或重复事件时可能有用
vascowhite at gmail dot com
11 年前
重要的是要意识到,在使用任何迭代器之前必须调用 rewind(),否则可能会出现未定义的行为,请在此处查看示例代码和输出 http://3v4l.org/rvNpU

有关更完整的解释,请参阅此错误报告 https://bugs.php.net/bug.php?id=63823&edit=2
To Top