AppendIterator::__construct
Constructs an AppendIterator
&reftitle.description;
public
AppendIterator::__construct
Constructs an AppendIterator.
&reftitle.parameters;
&no.function.parameters;
&reftitle.returnvalues;
&return.void;
&reftitle.examples;
Iterating AppendIterator with foreach
append($pizzas);
$appendIterator->append($toppings);
foreach ($appendIterator as $key => $item) {
echo $key . ' => ' . $item . PHP_EOL;
}
?>
]]>
&example.outputs;
Margarita
1 => Siciliana
2 => Hawaii
0 => Cheese
1 => Anchovies
2 => Olives
3 => Pineapple
4 => Ham
]]>
Iterating AppendIterator with the AppendIterator API
append($pizzas);
$appendIterator->append($toppings);
while ($appendIterator->valid()) {
printf(
'%s => %s => %s%s',
$appendIterator->getIteratorIndex(),
$appendIterator->key(),
$appendIterator->current(),
PHP_EOL
);
$appendIterator->next();
}
?>
]]>
&example.outputs;
0 => Margarita
0 => 1 => Siciliana
0 => 2 => Hawaii
1 => 0 => Cheese
1 => 1 => Anchovies
1 => 2 => Olives
1 => 3 => Pineapple
1 => 4 => Ham
]]>
&reftitle.notes;
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.
&reftitle.seealso;
AppendIterator::append