ahoraian / feed
一个基于PHP读取Atom订阅源(feed)的简单包
1.0.0
2020-12-12 18:22 UTC
Requires (Dev)
- phpunit/phpunit: ^9
README
订阅源阅读器(目前为Atom阅读器)
此扩展包是一个简单的订阅源阅读器,目前支持Atom订阅源。
配置
$ composer require ahoraian/feed
用法
此包内部支持一些HTTP客户端驱动程序,但它是完全可扩展的,您可以使用任何HTTP驱动程序,也支持本地Atom.xml文件(使用FileDriver代替CurlDriver)。
远程订阅源
// example url $feedUrl = 'https://rss.dw.com/atom/rss-en-all'; $reader = new \Ahoraian\Feed\Reader(new \Ahoraian\Feed\Reader\Driver\CurlDriver); $feeds = $reader->load($feedUrl); foreach($feeds as $feed) { $id = $feed->getId(); $title = $feed->getTitle(); $authors = $feed->getAuthors(); $links = $feed->getLinks(); $summary = $feed->getSubtitle(); $categories = $feed->get('category'); $contributors = $feed->getContributors(); $generators = $feed->getGenerator(); $icon = $feed->getIcon(); $logo = $feed->getLogo(); $copyRight = $feed->getCopyright(); $lastModificationDate = $feed->getLastModification(); foreach ($feed->getItems() as $entry) { $entryId = $entry->getId(); $entryTitle = $entry->getTitle(); $entryAuthors = $entry->getAuthors(); $entryContent = $entry->getContent(); $entrySummary = $entry->getSummary(); $entryLinks = $entry->getLinks(); $entrySubtitle = $entry->getSubtitle(); $entryCategories = $entry->get('category'); $entryContributors = $entry->getContributors(); $entryCopyright = $entry->getCopyright(); $entrySource = $entry->getSource(); $entryLastModification = $entry->getLastModification(); } }
本地
// example url $atom = file_get_contents('feed.xml'); $reader = new \Ahoraian\Feed\Reader(new \Ahoraian\Feed\Reader\Driver\FileDriver); $feeds = $reader->load($atom); //...