Php 使用SimpleXMLElement访问数组时的奇怪行为
我正在分析一个Webserivce响应,我有一个奇怪的行为 下面是一个小例子 输出通过Php 使用SimpleXMLElement访问数组时的奇怪行为,php,iterator,simplexml,Php,Iterator,Simplexml,我正在分析一个Webserivce响应,我有一个奇怪的行为 下面是一个小例子 输出通过var\u dump($results)完成 但是如果我做了var\u转储($results->channel->item)而不是包含9个元素的数组,后者似乎是数组的1个元素 那是什么行为? 谢谢 PS:我在PHP5.4.6和Xdebug 2.2.1上运行,这是完全正常的$results->channel->item是一个迭代器,用于foreach循环。这将为您提供所有项目元素: foreach ($xml-&
var\u dump($results)完成代码>
但是如果我做了var\u转储($results->channel->item)代码>而不是包含9个元素的数组,后者似乎是数组的1个元素
那是什么行为?
谢谢
PS:我在PHP5.4.6和Xdebug 2.2.1上运行,这是完全正常的$results->channel->item
是一个迭代器,用于foreach
循环。这将为您提供所有项目
元素:
foreach ($xml->channel->item as $item) {
var_dump($item);
}
谢谢,很难猜测它是一个迭代器,因为xdebug告诉我们它是一个“数组”。@Tristan是的,这是不可能猜测的,这就是为什么参考类定义为SimpleXMLElement implements Traversable的文档很重要。