1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34
|
--TEST--
SPL: Iterator: Overloaded object and destruction
--FILE--
<?php
class Test implements Iterator {
function foo() {
echo __METHOD__ . "()\n";
}
function rewind() {}
function valid() {}
function current() {}
function key() {}
function next() {}
}
class TestIteratorIterator extends IteratorIterator {
function __destruct() {
echo __METHOD__ . "()\n";
$this->foo();
}
}
$obj = new TestIteratorIterator(new Test);
$obj->foo();
unset($obj);
?>
===DONE===
--EXPECT--
Test::foo()
TestIteratorIterator::__destruct()
Test::foo()
===DONE===
|