我正在尝试解析http://www.mpgh.net/forum/external.php?type=RSS2&forumids=175的XML 但我得到这个错误,找不到什么错误。
注意:尝试在第9行的C:\ xampp \ htdocs \ crossfire \ index.php中获取非对象的属性
<?php
$rss = simplexml_load_file('http://www.mpgh.net/forum/external.php?type=RSS2&forumids=175');
for($i=0;$i<10;$i+=1) {
$namespaces = $rss->getNameSpaces(true);
$dc = $rss->children($namespaces['dc']);
echo "Title: " . $rss->channel->item[$i]->title . "<br>";
echo "Creator: " . $dc->channel->item[$i]->creator . "<br>";
echo "Link: " . $rss->channel->item[$i]->link . "<br><br>";
}
我的第二个问题。
为什么此代码仅在http://www.mpgh.net/forum/external.php?type=RSS2&forumids=175
处正常运行,而不在http://www.mpgh.net/forum/external.php?type=RSS2&forumids=168
注意:尝试在第7行的C:\ xampp \ htdocs \ crossfire \ index.php中获取非对象的属性
<?php
$rss = New DOMDocument();
$rss = simplexml_load_file('http://www.mpgh.net/forum/external.php?type=RSS2&forumids=168');
for($i=0;$i<10;$i+=1) {
if (substr($rss->channel->item[$i]->title, 0, 9) == '[Release]') {
echo "Title: " . $rss->channel->item[$i]->title . "<br>";
echo "Link: " . $rss->channel->item[$i]->link . "<br><br>";
} else {
echo 'Hoi<br><br>';
}
}
感谢。
答案 0 :(得分:1)
我认为问题是$i
的{{1}}索引未设置或不是对象。
试试这个;它会揭露问题:
$rss->channel->item