PHP | ArrayObject setIteratorClass() Function

The ArrayObject::setIteratorClass() function is an inbuilt function in PHP which is used to set the iterator classname for the ArrayObject.
Syntax:
void ArrayObject::setIteratorClass( string $iterator_class )
Parameters: This function accepts single parameter $iterator_class which holds the class name of the array iterator. It is used when iterating it over this object.
Return Value: This function does not return any value.
Below programs illustrate the ArrayObject::setIteratorClass() function in PHP:
Program 1:
<?php // PHP program to illustrate the // ArrayObject::setIteratorClass() function // Custom ArrayIterator (inherits from ArrayIterator) class iteratorClass extends ArrayIterator { } // Create array object $arrayObjectElement = new ArrayObject( array('Geeks', 'for', 'Geeks') ); // Use ArrayObject::setIteratorClass() function // to set the iterator classname for the ArrayObject $arrayObjectElement->setIteratorClass('iteratorClass'); print_r($arrayObjectElement->getIterator()); ?> |
Output:
iteratorClass Object
(
[storage:ArrayIterator:private] => ArrayObject Object
(
[storage:ArrayObject:private] => Array
(
[0] => Geeks
[1] => for
[2] => Geeks
)
)
)
Program 2:
<?php // PHP program to illustrate the // ArrayObject::setIteratorClass() function // Custom ArrayIterator (inherits from ArrayIterator) class iteratorClass extends ArrayIterator { } // Declare an associative array $arr = array( "a" => "Welcome", "b" => "to", "d" => "zambiatek"); // Create array object $arrayObjectElement = new ArrayObject($arr); // Use ArrayObject::setIteratorClass() function // to set the iterator classname for the ArrayObject $arrayObjectElement->setIteratorClass('iteratorClass'); print_r($arrayObjectElement->getIterator()); ?> |
Output:
iteratorClass Object
(
[storage:ArrayIterator:private] => ArrayObject Object
(
[storage:ArrayObject:private] => Array
(
[a] => Welcome
[b] => to
[d] => zambiatek
)
)
)
Reference: https://www.php.net/manual/en/arrayobject.setiteratorclass.php



