Чтение RSS на PHP


1
<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:yandex="http://news.yandex.ru" xmlns:media="http://search.yahoo.com/mrss/" version="2.0">
<channel>
    <title>AAA</title>
    <link>AAA</link>
    <description>AAA</description>
    <yandex:logo>AAA</yandex:logo>
    <yandex:logo type="square">AAA</yandex:logo>
    <item>
        <title>AAA/title>
        <link>AAA</link>
        <pdalink>AAA</pdalink>
        <description>AAA</description>
        <author>AAA</author>
        <category>AAA</category>
        <enclosure url="AAA" type="image/jpeg"/>
        <pubDate>AAA</pubDate>
        <yandex:full-text>AAA</yandex:full-text>
    </item>
 </channel>
</rss>

Как получить из RSS url <enclosure> и содержимое <yandex:full-text> и вывести все данные в foreach?

Источник
  •  656
  •  1
  • 1 янв 2018 2018-01-01 18:22:39
Это не решило проблему. Обычные теги я могу вывести...к примеру title, а как получить url <enclosure> и содержимое <yandex:full-text> ?? — 1 янв 20182018-01-01 19:04:33.000000
Использовать SimpleXML, он уже встроен в PHP, ничего дополнительно подрубать не надо webmasters.by/articles/web-programming/… 1 янв 20182018-01-01 18:36:28.000000

1 ответ

0
# 1. Подключаем файлик.
$test = simplexml_load_file("test.xml");
# 2. Получаем содержимое аттрибута url в enclosure
echo $test->channel->item->enclosure->attributes()->url;
# 3. Получаем содержимое yandex:full-text
$namespaces = $test->getNamespaces(true);
$dc = $test->channel->item->children($namespaces["yandex"]);
echo $dc;