AppendIterator
PHP Manual

AppendIterator::__construct

(PHP 5 >= 5.1.0, PHP 7)

AppendIterator::__constructConstructs an AppendIterator

Description

public AppendIterator::__construct ( void )

Constructs an AppendIterator.

Parameters

This function has no parameters.

Return Values

No value is returned.

Examples

Example #1 Iterating AppendIterator with foreach

<?php
$pizzas   
= new ArrayIterator(array('Margarita''Siciliana''Hawaii'));
$toppings = new ArrayIterator(array('Cheese''Anchovies''Olives''Pineapple''Ham'));

$appendIterator = new AppendIterator;
$appendIterator->append($pizzas);
$appendIterator->append($toppings);

foreach (
$appendIterator as $key => $item) {
    echo 
$key ' => ' $item PHP_EOL;
}
?>

The above example will output:

0 => Margarita
1 => Siciliana
2 => Hawaii
0 => Cheese
1 => Anchovies
2 => Olives
3 => Pineapple
4 => Ham

Example #2 Iterating AppendIterator with the AppendIterator API

<?php
$pizzas   
= new ArrayIterator(array('Margarita''Siciliana''Hawaii'));
$toppings = new ArrayIterator(array('Cheese''Anchovies''Olives''Pineapple''Ham'));

$appendIterator = new AppendIterator;
$appendIterator->append($pizzas);
$appendIterator->append($toppings);

while (
$appendIterator->valid()) {
    
printf(
        
'%s => %s => %s%s',
        
$appendIterator->getIteratorIndex(),
        
$appendIterator->key(),
        
$appendIterator->current(),
        
PHP_EOL
    
);
    
$appendIterator->next();
}
?>

The above example will output:

0 => 0 => Margarita
0 => 1 => Siciliana
0 => 2 => Hawaii
1 => 0 => Cheese
1 => 1 => Anchovies
1 => 2 => Olives
1 => 3 => Pineapple
1 => 4 => Ham

Notes

Caution

When using iterator_to_array() to copy the values of the AppendIterator into an array, you have to set the optional use_key argument to FALSE. When use_key is not FALSE any keys reoccuring in inner iterators will get overwritten in the returned array. There is no way to preserve the original keys.

See Also


AppendIterator
PHP Manual