从wordpress rss获取分类[php]

时间:2017-12-02 18:04:59

标签: php wordpress rss

我需要帮助才能从rss中获取所有类别。 这是前。我的RSS饲料:

<item>
    <title>Coca-Cola</title>
    <link>https://www.tralaaa.com/coca-cola/</link>
    <comments></comments>
    <pubDate>Fri, 01 Dec 2017 11:36:40 +0000</pubDate>
    <dc:creator><![CDATA[Admin]]></dc:creator>
    <category><![CDATA[cat1]]></category>
    <category><![CDATA[cat2]]></category>
    <category><![CDATA[cat3]]></category>
    <category><![CDATA[cat4]]></category>
    <description><![CDATA[]]></description>
    <content:encoded><![CDATA[]]></content:encoded>
</item>

我尝试$cat = $item->category(0);但是给我错误

  

调用未定义的方法SimpleXMLElement :: category()

1 个答案:

答案 0 :(得分:0)

您无法使用()括号访问类别,您需要使用[],如下所示:

$xml = new SimpleXMLElement(
'<item>
    <title>Coca-Cola</title>
    <link>https://www.tralaaa.com/coca-cola/</link>
    <comments></comments>
    <pubDate>Fri, 01 Dec 2017 11:36:40 +0000</pubDate>
    <dc:creator><![CDATA[Admin]]></dc:creator>
    <category><![CDATA[cat1]]></category>
    <category><![CDATA[cat2]]></category>
    <category><![CDATA[cat3]]></category>
    <category><![CDATA[cat4]]></category>
    <description><![CDATA[]]></description>
    <content:encoded><![CDATA[]]></content:encoded>
</item>');

$cat_name1 = $xml->category[0]->__toString();
$cat_name2 = $xml->category[1]->__toString();
$cat_name3 = $xml->category[2]->__toString();
$cat_name4 = $xml->category[3]->__toString();


echo "<pre>";
print_r($cat_name1);
echo "</pre>";
echo "<pre>";
print_r($cat_name2);
echo "</pre>";
echo "<pre>";
print_r($cat_name3);
echo "</pre>";
echo "<pre>";
print_r($cat_name4);
echo "</pre>";

这将输出:

enter image description here

你可以:

$xml->category->__toString();

它会假设您想要第一个类别。