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