downloads | documentation | faq | getting help | mailing lists | licenses | wiki | reporting bugs | php.net sites | conferences | my php.net

search for in the

InfiniteIterator::__construct> <GlobIterator::count
[edit] Last updated: Fri, 24 Jun 2011

view this page in

The InfiniteIterator class

Introduction

The InfiniteIterator allows one to infinitely iterate over an iterator without having to manually rewind the iterator upon reaching its end.

Class synopsis

InfiniteIterator extends IteratorIterator implements OuterIterator , Traversable , Iterator {
/* Methods */
__construct ( Iterator $iterator )
public void next ( void )
/* Inherited methods */
public void IteratorIterator::current ( void )
public void IteratorIterator::key ( void )
public void IteratorIterator::next ( void )
public void IteratorIterator::rewind ( void )
public bool IteratorIterator::valid ( void )
}

Table of Contents



add a note add a note User Contributed Notes InfiniteIterator - [1 notes]
up
2
Anonymous
7 months ago
to loop through object keys and reset to the start, try this:
<?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);
}

?>

will output:

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

Can be useful when doing date operations or recurring events

 
show source | credits | stats | sitemap | contact | advertising | mirror sites