(PHP 5, PHP 7, PHP 8)
ArrayObject::getIterator — Crea un nuevo iterador a partir de un objeto ArrayObject
Crea un nuevo Iterator (por omisión ArrayIterator ) a partir de una instancia de ArrayObject .
Esta función no contiene ningún parámetro.
Un iterador desde un ArrayObject .
Ejemplo #1 Ejemplo con 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();
}
?>El ejemplo anterior mostrará:
1 => one 2 => two 3 => three
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