> Hello Mathieu,
>
> Sunday, August 29, 2004, 4:18:25 AM, you wrote:
>
>
>>Hi all,
>
>
>> I have been playing with the SPL lately and today I ended up playing
>>with the SimpleXMLIterator.
>
>
>> The documentation on that class if fairly poor and I'm in fact
>>requesting some information about it. I managed to create a
>>SimpleXMLIterator passing it basic xml in the constructor but wasn't
>>able to get anything from the getChildren() method and hasChildren()
>>return false. The var_dump of the iterator show me the expected thing tough.
>
>
>>Nor does the current() or key() return anything. I'm using php5.0.1
>
>
>
>>Example:
>><?php
>
>
>>$xml = "<test><test1>Here we are</test1><test2>There</test2></test>";
>
>
>>$it = new SimpleXMLIterator($xml);
>
>
>>var_dump($it);
>
>
>>while($it->hasChildren())
>>{
>> echo "While\n";
>> $child = $it->getChildren();
>>}
>
>
> Try working with while($it->valid()....
> Besides that SimpleXMLIterator implements the RecursiveIterator interface.
> What it does is iterating over one element and if teh element has sub
> elements then hasChildren() returns true and getchildren() returns the
> iterator for that sub element. To see what's going on have a look at
> ext/spl/tests/sxe_00*.phpt.
>
> regards
> marcus
>
>
I already tried that but I figured out what I was doing wrong... You need to rewind the iterator before using it... I don't know why but I was assuming that it was ready for a loop!
The other solution foreach is working as the foreach does a rewind() on it at first.
--
Math
aka ROunofF
====== argontechnologies.ca
-- PHP Internals - PHP Runtime Development Mailing List To unsubscribe, visit: http://www.php.net/unsub.php