(PHP 5 >= 5.1.0, PHP 7, PHP 8)
ArrayObject::setIteratorClass — Define el nombre de la clase del iterador para el objeto ArrayObject
Define el nombre de la clase del iterador del array, utilizado por ArrayObject::getIterator().
iteratorClass
El nombre de la clase del iterador a utilizar para iterar sobre este objeto.
No devuelve ningún valor.
Ejemplo #1 Ejemplo con ArrayObject::setIteratorClass()
<?php
// ArrayIterator personalizado (hereda de ArrayIterator)
class MonArrayIterator extends ArrayIterator {
// implementación personal
}
// Lista de frutas
$fruits = array("citrons" => 1, "oranges" => 4, "bananes" => 5, "pommes" => 10);
$fruitsArrayObject = new ArrayObject($fruits);
// Asigna el nuevo nombre de clase de iteración
$fruitsArrayObject->setIteratorClass('MonArrayIterator');
var_dump($fruitsArrayObject->getIterator());
?>
El resultado del ejemplo sería:
object(MonArrayIterator)#2 (1) { ["storage":"ArrayIterator":private]=> object(ArrayObject)#1 (1) { ["storage":"ArrayObject":private]=> array(4) { ["citrons"]=> int(1) ["oranges"]=> int(4) ["bananes"]=> int(5) ["pommes"]=> int(10) } } }