1--TEST-- 2Test iterator interaction with empty and var_dump 3--EXTENSIONS-- 4simplexml 5--FILE-- 6<?php 7 8$xml = <<<XML 9<container> 10 <first><foo/></first> 11</container> 12XML; 13 14$sxe = simplexml_load_string($xml); 15 16echo "--- var_dump ---\n"; 17 18$first = $sxe->first; 19$first->rewind(); 20var_dump($first->current()->getName()); 21var_dump($first); 22var_dump($first->current()->getName()); 23 24echo "--- empty ---\n"; 25 26$first = $sxe->first; 27$first->rewind(); 28var_dump($first->current()->getName()); 29var_dump(empty($first)); 30var_dump($first->current()->getName()); 31 32?> 33--EXPECT-- 34--- var_dump --- 35string(5) "first" 36object(SimpleXMLElement)#2 (1) { 37 [0]=> 38 object(SimpleXMLElement)#4 (1) { 39 ["foo"]=> 40 object(SimpleXMLElement)#5 (0) { 41 } 42 } 43} 44string(5) "first" 45--- empty --- 46string(5) "first" 47bool(false) 48string(5) "first" 49