3

我用来提取提要标题的脚本是:

<?php  

function getFeed($feed_url) {  

$content = file_get_contents($feed_url);  
$x = new SimpleXmlElement($content);  

echo "<ul>";  

foreach($x->channel->item as $entry) {  
    echo "<li><a href='$entry->link' title='$entry->title'>" . $entry->title . "</a>    </li>";
    $i++;
    if($i==5) break;        
}  
echo "</ul>";  
}  
?> 

我想为每个标题/文章提取图像并将它们放在标题旁边。

浮动部分很容易。我无法输入实际图像。我已经尝试过这样的标记:<img src="$entry->image" />,但它没有用。

请问我该怎么做?

4

2 回答 2

2

作为随机建议的答案:

  • 我使用 $item['description'] 来表示描述字符串。
  • 然后匹配img标签
  • 输出图像标签
  • 然后从原始 $content 中删除图像标签并输出,你只剩下描述文本

    <?php 
        $content = $item['description'];
        preg_match('/(<img[^>]+>)/i', $content, $matches);
        echo $matches[0];
        echo str_replace($matches[0],"",$content);
    ?>
    
于 2014-08-16T23:47:42.293 回答
1

在显示提要内容时,诸如$entry->link和之类的变量$entry->title会起作用,因为它们在标准 RSS 提要项中是有效的、存在的和必需的元素。

调用$entry->image将需要源 RSS 使用和填充该可选元素。

一些提要可能包含该数据,但大多数不会。

或者,您可以编写自己的函数或方法来扫描description元素的内容,并根据需要找到要包含的任何合适的图像。

于 2013-10-13T04:33:40.170 回答