Skip to content

vedmant/laravel-feed-reader

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

94 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Laravel Feed Reader

Latest Version on Packagist Software License Total Downloads Build Status

A simple RSS feed reader for Laravel

Features

  • One command to read any RSS feed
  • Different RSS feed profiles enabled

Quick Start

To install this package run the Composer command

$ composer require vedmant/laravel-feed-reader

Video Tutorial

For Laravel 5.5 and above this package supports Laravel Auto-Discovery and will be discovered automatically.

For Laravel versions prior to 5.5 follow next guide:

In your config/app.php add following:

'providers' => [

    Illuminate\Foundation\Providers\ArtisanServiceProvider::class,
    Illuminate\Auth\AuthServiceProvider::class,
    ...
    Vedmant\FeedReader\FeedReaderServiceProvider::class, // Add this line

[,

'aliases' => [

    'App'        => Illuminate\Support\Facades\App::class,
    'Artisan'    => Illuminate\Support\Facades\Artisan::class,
    ...
    'FeedReader' => Vedmant\FeedReader\Facades\FeedReader::class, // Add this line
],

Setup

Publishing the Configuration

After installing through composer, you should publish the config file. To do this, run the following command:

$ php artisan vendor:publish --provider="Vedmant\FeedReader\FeedReaderServiceProvider"

Configuration Values

Once published, the configuration file contains an array of profiles. These will define how the RSS feed reader will react. By default the "default" profile will used. For more information on: here.

How to use

Once you have all of the configuration settings set up, in order to read a RSS feed all you need to do is call the read function:

$f = FeedReader::read('https://news.google.com/news/rss');

echo $f->get_title();
echo $f->get_items()[0]->get_title();
echo $f->get_items()[0]->get_content();

This function accepts 2 parameters however, the second parameter is optional. The second parameter is the configuration profile that should be used when reading the RSS feed.

This will return to you the SimplePie object with the RSS feed in it. See SimplePie API for all available methods.

Passing curl options

You can also pass specific curl options per read() calls. You can pass these options, as an array as the 3rd parameter. The list of options can be found on the PHP Manual.

Example:

// You need to log in to the rss endpoint with a Digest auth
$options = [
    'curl_options' => [
        CURLOPT_HTTPAUTH => CURLAUTH_DIGEST,
        CURLOPT_USERPWD => 'username:password',
    ],
];

$f = FeedReader::read('https://news.google.com/news/rss', 'default', $options);

License

Feed Reader is free software distributed under the terms of the MIT license

Additional Information

Any issues, please report here

About

A simple RSS feed reader for Laravel

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • PHP 100.0%