使用以下代码时我得到了
注意:未定义索引:第34行/home/.../php中的标题
注意:未定义的索引:第37行/home/.../php中的日期
我不确定为什么要这样做!
<?php
$rss = new DOMDocument();
$rss->load('http://www.example.com/feed/');
$feed = array();
foreach ($rss->getElementsByTagName('item') as $node) {
$item = array (
'desc' => $node->getElementsByTagName('description')->item(0)->nodeValue,
'link' => $node->getElementsByTagName('link')->item(0)->nodeValue,
);
array_push($feed, $item);
}
$limit = 2;
for($x=0;$x<$limit;$x++) {
$title = str_replace(' & ', ' & ', $feed[$x]['title']);
$link = $feed[$x]['link'];
$description = $feed[$x]['desc'];
$date = date('l F d, Y', strtotime($feed[$x]['date']));
echo '<p><strong><a href="'.$link.'" title="'.$title.'">'.$title.'</a></strong><br />';
echo '<p>'.$description.'</p>';
}
&GT;
答案 0 :(得分:0)
因为您没有在title
数组中定义date
和$feed
值。因为未指定索引,所以它被视为未定义。请尝试:
$item = array (
'title' => $node->getElementsByTagName('title')->item(0)->nodeValue,
'desc' => $node->getElementsByTagName('description')->item(0)->nodeValue,
'link' => $node->getElementsByTagName('link')->item(0)->nodeValue,
'date' => $node->getElementsByTagName('pubDate')->item(0)->nodeValue,
);
答案 1 :(得分:0)
您将$item
数组推送到$feed
数组。在$feed
数组中没有这样的键值可用
title
和date
。
$item = array (
'desc' => $node->getElementsByTagName('description')->item(0)->nodeValue,
'link' => $node->getElementsByTagName('link')->item(0)->nodeValue,
'title' => $node->getElementsByTagName('title')->item(0)->nodeValue,
'date' => $node->getElementsByTagName('date')->item(0)->nodeValue
);
我假设title
和date
如果没有设置合适的值,你就会有价值。