文字

AppendIterator::__construct

(PHP 5 >= 5.1.0)

AppendIterator::__constructConstructs an AppendIterator

说明

public AppendIterator::__construct ( void )

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.

参见

  • AppendIterator::append() - Appends an iterator
上一篇: 下一篇: