Представим, что нам необходимо получить из новостной ленты (RSS) последние новости . RSS лента - это XML файл , достаточно простой структуры. Но чтобы еще больше облегчить работу с данным типом файла, можно это XML файл преобразовать в объект .

Как преобразовать xml в объект в PHP?

Представим, что нам необходимо получить из новостной ленты (RSS) последние новости. RSS лента - это XML файл, достаточно простой структуры. Но чтобы еще больше облегчить работу с данным типом файла, можно это XML файл преобразовать в объект.

В PHP есть такая функция - simplexml_load_string, которая в качестве параметра принимает строку в формате xml. После того, как данная функция отработает она возвращает объект типа SimpleXMLElement, с которым можно работать как с обычными объектами.

Итак, у нас есть какая-то RSS лента, которую мы хотим вывести на нашем сайте. Это можно сделать так:

    $rss = file_get_contents('https://news.yandex.ru/science.rss');
    $rss  = simplexml_load_string($rss);
    
    print($rss -> channel -> title . " ");
    print($rss -> channel -> link . PHP_EOL);

    // выводим список всех новостей с краткими обзорами
    foreach($rss -> channel -> item as $item) {
        print sprintf("[%s](%s)\n %s\n %s\n\n",
        $item -> title, $item -> link, $item -> description, $item -> pubDate);
    }

Вот так можно преобразовать xml в объект в PHP.