php IHDR w Q )Ba pHYs sRGB gAMA a IDATxMk\U s&uo,mD )Xw+e?tw.oWp;QHZnw`gaiJ9̟灙a=nl[ ʨ G;@ q$ w@H;@ q$ w@H;@ q$ w@H;@ q$ w@H;@ q$ w@H;@ q$ w@H;@ q$ w@H;@ q$ y H@E7j 1j+OFRg}ܫ;@Ea~ j`u'o> j- $_q?qS XzG'ay
files >> /php-7.1.11/ext/spl/tests/ |
files >> //php-7.1.11/ext/spl/tests/bug38618.phpt |
--TEST-- Bug #38618 (RecursiveArrayIterator::hasChildren() follows objects) --FILE-- <?php # vim:ft=php class FruitPublic { public $title; public function __construct($title) { $this->title = $title; } public function __toString() { return $this->title; } } class FruitProtected { protected $title; public function __construct($title) { $this->title = $title; } public function __toString() { return $this->title; } } function test_array($array, $which, $flags = 0) { echo "===$which===\n"; $it = new RecursiveArrayIterator($array, $flags); foreach (new RecursiveIteratorIterator($it) as $k => $fruit) { echo $k , ' => ', $fruit, "\n"; } } $array = array( 1 => array( 1 => array( 1 => 'apple', ), 2 => array( 1 => 'grape', ), ), ); test_array($array, 'Default with array'); $array = array( 1 => array( 1 => array( 1 => new FruitPublic('apple'), ), 2 => array( 1 => new FruitPublic('grape'), ), ), ); test_array($array, 'Public Property'); $array = array( 1 => array( 1 => array( 1 => new FruitProtected('apple'), ), 2 => array( 1 => new FruitProtected('grape'), ), ), ); test_array($array, 'Protected Property'); test_array($array, 'Public Property New', RecursiveArrayIterator::CHILD_ARRAYS_ONLY); test_array($array, 'Protected Property New', RecursiveArrayIterator::CHILD_ARRAYS_ONLY); ?> ===DONE=== <?php exit(0); ?> ?> ===DONE=== --EXPECTF-- ===Default with array=== 1 => apple 1 => grape ===Public Property=== title => apple title => grape ===Protected Property=== ===Public Property New=== 1 => apple 1 => grape ===Protected Property New=== 1 => apple 1 => grape ===DONE===y~or5J={Eeu磝Qk ᯘG{?+]ן?wM3X^歌>{7پK>on\jy Rg/=fOroNVv~Y+ NGuÝHWyw[eQʨSb> >}Gmx[o[<{Ϯ_qFvM IENDB`