Php/docs/appenditerator.construct

来自菜鸟教程
跳转至:导航、​搜索

AppendIterator::__construct

(PHP 5 >= 5.1.0, PHP 7)

AppendIterator::__constructConstructs an AppendIterator


说明

public AppendIterator::__construct ( )

Constructs an AppendIterator.


参数

此函数没有参数。


返回值

没有返回值。


范例

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;}?>

以上例程会输出:


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();}?>

以上例程会输出:


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

注释

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.


参见