2012-01-28 127 views
0

我想创建一个for循环,它将解析出使用php的xml文档的不同元素。据分析,当我把在该行的条目的数量:For循环,而在PHP中解析XML?

$s = $xml->entry[0]->children($namespaces['s']); 

但是我试图取代数字“我”通过每个在XML文档中的条目数,我得到一个错误(致命错误:调用第10行上的/home/content/c/a/s/cashme/html/buylooper/xml.php中的非对象的成员函数children()。我该如何解决这个问题?

<?php 
$url = 'xml-file.xml'; 
$xml = simplexml_load_file($url); 
$namespaces = $xml->entry->getNameSpaces(true); 

for ($i = 0; $i <= 10; $i += 1){ 

$s = $xml->entry[i]->children($namespaces['s']); 
$title = $s->product->title; 

//print 
echo $retailer; 

} 
?> 
+0

这意味着'$ XML->进入[I]'不存在某种“我”的价值。 – Hamish 2012-01-28 23:53:14

+3

大概应该是$ i – Ben 2012-01-28 23:54:32

+0

@ben,duh ...谢谢 – sharataka 2012-01-28 23:56:09

回答

2

您需要使用$我,而不是我。

作为一个方面说明:

这个错误应该成为在开发机器上非常明显有:

你会得到像Use of undefined constant i - assumed 'i'

警告(除非您已经定义了我作为一个恒定的地方,但那是一个奇怪的常量名)