简单的XML PHP错误 - Echo没什么

时间:2010-09-02 10:56:39

标签: php xml simplexml

好的,

基本上,我从像这样的URL

加载一个simplexml_load_file
$stats =  simplexml_load_file("http://example.com/api/api.asmx/Campaign.GetSummary?ApiKey=$apikey&CampaignID=$CID");

返回此

SimpleXMLElement Object
(
    [Recipients] => 1
    [TotalOpened] => 0
    [Clicks] => 0
    [Unsubscribed] => 0
    [Bounced] => 0
    [UniqueOpened] => 0
)

我加载之后我想回复信息,所以我试着像这样回应它

echo '<ul id="views">'; 
echo '<li>';
print $stats['Recipients'];
echo '</li>';
echo '</ul>';

但是当它运行时,我得不到任何数据,只是空<li></li>

2 个答案:

答案 0 :(得分:1)

使用SimpleXMLElements时,不使用[]表示法 - 而是使用->。所以,你的代码应该是:

echo '<ul id="views">'; 
echo '<li>';
print $stats->Recipients;
echo '</li>';
echo '</ul>';

我相信这样的符号可能(它在我的应用程序中,但我对SimpleXMLElements不太熟悉)返回一个SimpleXMLElement对象,而不是一个字符串 - 你可以将它强制转换为字符串/ int /无论如何在比较等中使用它。

答案 1 :(得分:1)

SimpleXMLElement Object不是数组,它是一个对象,线索的名称是:-)

您需要使用对象表示法

来访问它
 $stats->Recipients