ArrayObject::getIterator
(PHP 5, PHP 7, PHP 8)
ArrayObject::getIterator — ArrayObject インスタンスから新規イテレータを生成する
説明
新しい Iterator (デフォルトは ArrayIterator) を ArrayObject インスタンスから作成します。
パラメータ
この関数にはパラメータはありません。
戻り値
ArrayObject からイテレータを返します。
例
例1 ArrayObject::getIterator() の例
<?php
$array = [
'1' => 'one',
'2' => 'two',
'3' => 'three',
];
$arrayobject = new ArrayObject($array);
$iterator = $arrayobject->getIterator();
while ($iterator->valid()) {
echo $iterator->key() . ' => ' . $iterator->current() . "\n";
$iterator->next();
}
?>
上の例の出力は以下となります。
1 => one 2 => two 3 => three
+add a note
User Contributed Notes 1 note
doug at centraldesktop ¶
11 years ago
ArrayObject iterator class requires a child of ArrayObject or ArrayIterator
<?php
class MyIterator implements Iterator {
public
function __construct(ArrayObject $array, $flags = 0) {
// ...
}
public
function current() {
// ..
}
public
function next() {
// ..
}
public
function key() {
// ..
}
public
function valid() {
// ..
}
public
function rewind() {
// ..
}
}
$obj = new ArrayObject(array(), 0, 'MyIterator');
$obj->getIterator();
?>
PHP Fatal error: ArrayObject::getIterator(): Internal compiler error, Class is not child of ArrayObject or ArrayIterator in php shell code on line 1
↑ and ↓ to navigate •
Enter to select •
Esc to close
Press Enter without
selection to search using Google