Awesome
Warning !!
RSSClient will not be updated, you should consider migrating to FastFeed https://github.com/FastFeed/FastFeed
RSSClient
RSSClient is a simple to use RSS library to fetch and use RSS feeds. RSSClient is very fast!
Formats Supported
Installation
With Composer
It is best installed it through packagist
by including desarrolla2/rss-client
in your project composer.json require:
"require": {
// ...
"desarrolla2/rss-client": "dev-master"
}
Without Composer
You can also download it from [Github] (https://github.com/desarrolla2/RSSClient), but no autoloader is provided so you'll need to register it with your own PSR-0 compatible autoloader.
Usage
Without Cache
This example does not use any cache, so it probably will be too slow to be used on a website, you should implement your system cache, or use the cache system described below
<?php
use Desarrolla2\RSSClient\RSSClient;
$client = new RSSClient();
$client->addFeeds(
array(
'http://news.ycombinator.com/rss',
'http://feeds.feedburner.com/TechCrunch/',
),
'news'
);
$feeds = $client->fetch('news');
With Cache
This example uses the cache implemented by desarrolla2/cache
you must
select the adapter depending on your needs, you can find all the info in the
[Github repository] (https://github.com/desarrolla2/Cache).
<?php
// It is important that you select and configure your cache adapter
$client = new RSSClient();
$client->setCache(new Cache(new File('/tmp')));
You can see how to configure desarrolla2/cache in its [README] (https://github.com/desarrolla2/Cache)
The rest of the procedure is exactly the same as if you were using the client without cache.
<?php
$client->addFeeds(
array(
'http://news.ycombinator.com/rss',
'http://feeds.feedburner.com/TechCrunch/',
),
'news'
);
$feeds = $client->fetch('news');
Limiting the number of elements
You can use the second parameter of fetch
to limit the number of elements
<?php
$feeds = $client->fetch('news', 20);
Other
- Do you need a [custom processor] (https://github.com/desarrolla2/RSSClient/blob/master/doc/custom-process.md) ?
- API docs
Contact
You can contact with me on twitter.