Another fine Iterator from php . You can use it especially when you have to iterate over objects
<?php
$fruits = array(
"apple" => "yummy",
"orange" => "ah ya, nice",
"grape" => "wow, I love it!",
"plum" => "nah, not me"
);
$obj = new ArrayObject( $fruits );
$it = $obj->getIterator();
// How many items are we iterating over?
echo "Iterating over: " . $obj->count() . " values\n";
// Iterate over the values in the ArrayObject:
while( $it->valid() )
{
echo $it->key() . "=" . $it->current() . "\n";
$it->next();
}
// The good thing here is that it can be iterated with foreach loop
foreach ($it as $key=>$val)
echo $key.":".$val."\n";
/* Outputs something like */
Iterating over: 4 values
apple=yummy
orange=ah ya, nice
grape=wow, I love it!
plum=nah, not me
?>
Regards.
ArrayIterator クラス
導入
このイテレータは、配列やオブジェクトを反復処理する際に 値やキーをリセットしたり修正したりすることができます。
同じ配列を何度も反復処理したい場合は、 ArrayObject のインスタンスとそれを参照する ArrayIterator のインスタンスを作成し、 foreach を使用するか getIterator() メソッドを手動でコールします。
クラス概要
ArrayIterator
/* メソッド */
}目次
- ArrayIterator::current — 現在の配列エントリを返す
- ArrayIterator::key — 現在の配列キーを返す
- ArrayIterator::next — 次のエントリに移動する
- ArrayIterator::rewind — 配列を最初に巻き戻す
- ArrayIterator::seek — 位置を移動する
- ArrayIterator::valid — 配列がまだエントリを持っているかどうかチェックする
ArrayIterator
Venelin Vulkov
11-Nov-2008 03:44
11-Nov-2008 03:44
