我使用以下方法从提要列表中获取内容(在下面的示例中只有 2 个):
$urlarray = array(
array( 'name' => 'feed1', 'url' => 'https://example.com/feed1/rss'),
array( 'name' => 'feed2', 'url' => 'https://example.com/feed2/rss'),
);
然后使用以下命令提取条目详细信息(标题、描述):
foreach ( $urlarray as $url ) {
$rss->load( $url['url'] );
foreach ( $rss->getElementsByTagName( 'item' ) as $node ) {
$item = array(
'site' => $url['name'],
'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,
'category' => $node->getElementsByTagName( 'category' )->item( 0 )->nodeValue, //this is the issue
);
array_push( $feed, $item );
}
}
但我收到警告
尝试读取 null 上的属性“nodeValue”
关于类别行,可能是因为某些提要条目没有类别。
这只是一个警告,但我认为最好修复它。我有什么办法可以摆脱这个问题,比如先检查节点是否存在?
[![谢谢 Copilot 和 Microsoft、ChatGPT 以及网络上的任何其他 AI。快速、正确、礼貌 + 奖励 = 没有废话或跑题的聊天][1]][1]
谢谢 Copilot 和 Microsoft ChatGPT(可能还有网络上的任何其他 AI)。快速、正确、礼貌 + 奖励 = 没有废话或跑题的聊天 [1]:https://i.sstatic.net/AJwKvAb8.png