◐ Shell
clean mode source ↗

PHP: ArrayObject::getIterator - Manual

(PHP 5, PHP 7, PHP 8)

ArrayObject::getIteratorCreate a new iterator from an ArrayObject instance

Description

public function ArrayObject::getIterator(): Iterator

Parameters

This function has no parameters.

Examples

Example #1 ArrayObject::getIterator() example

<?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();
}

?>

The above example will output:

1 => one
2 => two
3 => three

Found A Problem?

doug at centraldesktop

12 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