Mat*_*att 2 php xml domdocument
我有一个xml feed位于这里,我试图读入一个PHP脚本,然后循环<packages>
,并总结<downloads>
.我试图使用DOMDocument做到这一点,但迄今为止失败了.
我一直试图使用的基本方法如下
<?php
$dom = new DomDocument;
$dom->loadXML('http://www.phogue.net/feed');
$packages = $dom->getElementsByTagName('package');
foreach($packages as $item)
{
echo $item->getAttribute('uid').'<br>';
}
?>
Run Code Online (Sandbox Code Playgroud)
上面的代码只是打印出每个项目的名称,但它不起作用.我目前收到以下错误
警告:DOMDocument :: loadXML()[domdocument.loadxml]:在第3行的/home/a8744502/public_html/userbar.php中,在Entity中找不到"<",第1行:
工作代码:
<?php
$dom = new DomDocument;
$dom->load('http://www.phogue.net/feed/');
$package = $dom->getElementsByTagName('package');
$value=0;
foreach ($package as $plugin) {
$downloads = $plugin->getElementsByTagName("downloads");
$download = $downloads->item(0)->nodeValue;
$authors = $plugin->getElementsByTagName("author");
$author = $authors->item(0)->nodeValue;
if($author == "Zaeed")
{
$value += $download;
}
}
echo $value;
?>
Run Code Online (Sandbox Code Playgroud)
DOMDocument::loadXML()
需要一串XML.请尝试DOMDocument::load()
- http://www.php.net/manual/en/domdocument.load.php
请记住,要通过HTTP打开XML文件,您需要启用相应的包装器.
归档时间: |
|
查看次数: |
5368 次 |
最近记录: |