Как прочитать поле pubdate с помощью плагина willvincent / feeds? - PullRequest
0 голосов
/ 10 января 2019

Я использую https://github.com/willvincent/feeds для чтения rss и со всеми полями мне также нужно получить поле pubDate. я не нашел метод для этого (я посмотрел также в исходном файле app / library / AppRssImport.php) и сделал некоторую отладку, поэтому методы

<code>            echo '<pre>$RssItem->data[\'child\']::'.print_r($RssItem->data['child'],true).'
'; дд ($ RssItem-> данные [ 'ребенок']);

имеет следующий вывод:

$RssItem->data['child']::Array
(
    [] => Array
        (
            [title] => Array
                (
                    [0] => Array
                        (
                            [data] => Man died 'in agony' after stroke amid ambulance delays
                            [attribs] => Array
                                (
                                )

                            [xml_base] => 
                            [xml_base_explicit] => 
                            [xml_lang] => 
                        )

                )

            [description] => Array
                (
                    [0] => Array
                        (
                            [data] => Michelle Lane has PTSD and flashbacks of her husband screaming in pain as they went to hospital by car.
                            [attribs] => Array
                                (
                                )

                            [xml_base] => 
                            [xml_base_explicit] => 
                            [xml_lang] => 
                        )

                )

            [link] => Array
                (
                    [0] => Array
                        (
                            [data] => https://www.bbc.co.uk/news/uk-england-nottinghamshire-46795776
                            [attribs] => Array
                                (
                                )

                            [xml_base] => 
                            [xml_base_explicit] => 
                            [xml_lang] => 
                        )

                )

            [guid] => Array
                (
                    [0] => Array
                        (
                            [data] => https://www.bbc.co.uk/news/uk-england-nottinghamshire-46795776
                            [attribs] => Array
                                (
                                    [] => Array
                                        (
                                            [isPermaLink] => true
                                        )

                                )

                            [xml_base] => 
                            [xml_base_explicit] => 
                            [xml_lang] => 
                        )

                )

            [pubDate] => Array
                (
                    [0] => Array
                        (
                            [data] => Thu, 10 Jan 2019 10:02:22 GMT
                            [attribs] => Array
                                (
                                )

                            [xml_base] => 
                            [xml_base_explicit] => 
                            [xml_lang] => 
                        )

                )

        )

    [http://search.yahoo.com/mrss/] => Array
        (
            [thumbnail] => Array
                (
                    [0] => Array
                        (
                            [data] => 
                            [attribs] => Array
                                (
                                    [] => Array
                                        (
                                            [width] => 1024
                                            [height] => 576
                                            [url] => http://c.files.bbci.co.uk/15CE0/production/_105121398_michelle-tony.jpg
                                        )

                                )

                            [xml_base] => 
                            [xml_base_explicit] => 
                            [xml_lang] => 
                        )

                )

        )

)

и https://imgur.com/a/wTmd9cV Я попытался прочитать значение поля pubDate, но не удалось. Эта структура была довольно странной для меня ... Какое правильное решение?

1 Ответ

0 голосов
/ 17 февраля 2019

Вы можете использовать метод get_date(), чтобы получить значение pubDate?

https://github.com/willvincent/feeds этот плагин является лишь оболочкой для расширения SimplePie php. Вы можете посмотреть в документации SimplePie для всех других доступных методов. http://simplepie.org/api/class-SimplePie_Item.html.

Используемый код может быть таким. Я использовал laravel, поэтому первая линия захвата корма могла бы быть другой.

$feed = Feeds::make('https://www.example.com/feed/');
$items = $feed->get_items();

foreach( $items as $key => $item ) {
    $title = $item->get_title();
    $guid = $item->get_id();
    $pub_date = $item->get_date();
}
...