PHP SimplePie错误:$ item-> get_enclosure()始终返回true

时间:2018-06-06 12:44:50

标签: php simplepie

我正在尝试使用php SimplePie Library构建新闻阅读器。当我尝试使用代码

从Feed中获取图像时
if ($enclosure = $item->get_enclosure()){
    $imageLink = $enclosure->get_link(); 
    echo "<img src=\"$imageLink\">";
}

当我从没有外壳的R​​SS Feed中获取Feed时,它会回显带有源的图像标记,如下所示。

src="//?#"

以上代码适用于带有附件的Feed。

我也试过代码:

if ($enclosure = $item->get_enclosure()){
    if($imageLink = $enclosure->get_link()){
        echo "<img src=\"$imageLink\">";
    }
}

有人可以告诉我这些代码我做错了吗?

2 个答案:

答案 0 :(得分:0)

好像$ imageLink的值是//?#,所以如果你这样做

if($imageLink = $enclosure->get_link())

结果是真的......

如果没有机箱,请检查确切的值,然后更改条件... I.E

$imageLink = $enclosure->get_link();
if($imageLink !== "//?#") {

您可以使用

检查确切的值
if ($enclosure = $item->get_enclosure()){
    $imageLink = $enclosure->get_link(); 
    var_dump($imageLink);
}

答案 1 :(得分:0)

检查$ imageLink是否在代码中的任何位置分配了值。最有可能是错误。在代码的每一步都使用print_r或var_dump可以优化将代码值分配给前面提到的变量的确切位置