Интеграция/чтение RSS PHP. PHP скрипт вывода RSS

Интеграция/чтение RSS PHP. PHP скрипт вывода RSS

2 марта 2020 PHP

В PHP начиная с 5 версии есть встроенная библиотека для работы с XML данными SimpleXML. Библиотека позволяет легко и просто использовать и манипулировать данными в RSS лентах используя объектно-ориентированный подход к XML DOM.

Чтение файла RSS

Используя SimpleXML, код ниже читает файл RSS и выводит структуру XML. Этот пример мало что делает, но демонстрирует, что файл читается и анализируется.

<?php
$xmlData=simplexml_load_file("https://it-blog.ru/feed/");
echo var_dump($xmlData);;
?>

Отображение данных

Для начала давайте покажем заголовок, авторское право и дату создания файла RSS. Следующий код читает файл, затем отображает title, lastBuildDate и copyright:

<?php
$xmlData=simplexml_load_file("https://it-blog.ru/feed/");
echo "
<h2>".$xmlData->channel->title."</h2>
";
echo "
<h3>Updated at ".$xmlData->channel->lastBuildDate."</h3>
";
echo "Copyright ".$xmlData->channel->copyright."";
?>

Отображение логотипа

В RSS есть узел с изображением, давайте его покажем:

<?php
$xmlData=simplexml_load_file("https://it-blog.ru/feed/");
echo '<img src="'.$xmlData->channel->image->url.
 '" width='.$xmlData->channel->image->width.
 '" height='.$xmlData->channel->image->height.' ></img>';
?>

Отображение новостей

Если вы изучите структуру XML, вы увидите, что элементы находятся внутри узла канала. Чтобы отобразить элемент, мы можем повторить все из них. Ниже приведен пример показа заголовка каждого элемента заголовка.

На сайте поиска туров в Турцию www.тут-тур.рф

<?php
$xmlData=simplexml_load_file("https://it-blog.ru/feed/");
echo '<img src="'.$xmlData->channel->image->url.
 '" width='.$xmlData->channel->image->width.
 '" height='.$xmlData->channel->image->height.' ></img>';
echo "
";
for ($i=0; $i<count($xmlData->channel->item); $i++)
{
 echo "Item ".$i.":".$xmlData->channel->item[$i]-><strong>title</strong>."
";
}
?>

Ссылки на новости

Связывание можно сделать, сделав каждый элемент ссылкой, используя узел ссылки. И пока будем показывать pubDate (дату публикации).

<?php
for ($i=0; $i<count($xmlData->channel->item); $i++)
{
 $link=$xmlData->channel->item[$i]-><strong>link</strong>;
 $title=$xmlData->channel->item[$i]->title;
 $publicationDate=$xmlData->channel->item[$i]-><strong>pubDate</strong>;
 echo "
<h2><a target='_blank' href='".$link."'>".$title."</a></h2>
";
 echo "
<h3>".$publicationDate."</h3>
<hr>";
}
?>

Форматирование

Теперь, когда вы знаете основы, форматирование можно сделать лучше. Вот пример:

<?php
$xmlData=simplexml_load_file("https://it-blog.ru/feed/");
echo '<img src="'.$xmlData->channel->image->url.
 '" width='.$xmlData->channel->image->width.
 '" height='.$xmlData->channel->image->height.' ></img>';
echo "
";
for ($i=0; $i<count($xmlData->channel->item); $i++)
{
 $link=$xmlData->channel->item[$i]->link;
 $title=$xmlData->channel->item[$i]->title;
 $publicationDate=$xmlData->channel->item[$i]->pubDate;
 echo "
<div class='newsItem'><a target='_blank' href='".$link."'>".$title."</a>";
 echo "
<div class='pubDate'>".$publicationDate."</div>
</div>
";
}
?>
Если вам понравилась статья, вы можете отблагодарить автора любой суммой, какую сочтете для себя приемлемой:
Остались вопросы по статье? Задайте их прямо сейчас!
Похожие записи
Файл менеджер PHP одним файлом

Очень нужная и удобная вещь phpFileManager. Это полноценный инструмент для управления файловой системой из одного файла с множеством функций и поддержкой русского языка. Это инструмент, предназначенный для быстрого управления файлами, а также для проверки конфигурации и безопасности PHP-сервера. Единственный PHP-файл Читать далее

Простая интеграция Яндекс.Кассы на PHP

На сегодняшний день Яндекс.Касса - это один из самых популярных мерчантов для подключения оплаты на любом сайте. Касса позволяет принимать платежи с помощью банковских карт и Яндекс.Денег, а так же подключить онлайн-кассу. Если у вас интернет-магазин на одной из популярных Читать далее

Как создать чат-бота ВКонтакте

В этом руководстве создадим чат-бота ВКонтакте, которого можно добавить не только в сообщения группы, но и в групповую беседу. Бот может прослушивать все сообщения в беседе, и если в каком-то из них будет содержаться определенное слово, фраза или часть текста, Читать далее

Вывод постов из Instagram на сайт с помощью API

У инстраграма нет готового виджета для вывода постов на сайте. В прошлой статье мы рассматривали как создать Instagram виджет для сайта с помощью конструктора. Это самый простой и быстрый способ, и на мой взгляд самый лучший. Единственный его минус, как Читать далее

PHP классы, объекты, методы

Абсолютно любой предмет из нашей жизни мы можем описать по его характеристикам и состоянию, а так же воздействовать на это состояние. Например, ваш автомобиль имеет определенный цвет, марку, двигатель и т.д. Кроме того он может ехать, стоять, набирать или сбавлять Читать далее

Удалить значение из массива на PHP

Удалить значение из массива по ключу на PHP довольно простая задача, но вот когда необходимо удалить элемент массива именно по значению, то тут возникают небольшие сложности. Вроде бы банальная задача, но придется воспользоваться небольшой хитростью. В этой статье рассмотрим как Читать далее

Создание чат-бота для Viber

В этой статье рассмотрим как создать простого чат-бота для Viber, который будет принимать и отправлять сообщения в чат. Шаг 1 Итак, для начала необходимо зарегистрироваться в сервисе Viber Admin Panel по этой ссылке. Шаг 2 Создаём бота. Для этого заполняем Читать далее

Добавить комментарий

*

code