simplepie / simplepie
A simple Atom/RSS parsing library for PHP
Installs: 6 836 041
Dependents: 73
Suggesters: 1
Security: 0
Stars: 1 549
Watchers: 63
Forks: 388
Open Issues: 62
Requires
- php: >=7.2.0
- ext-pcre: *
- ext-xml: *
- ext-xmlreader: *
Requires (Dev)
- friendsofphp/php-cs-fixer: ^2.19 || ^3.8
- psr/simple-cache: ^1 || ^2 || ^3
- yoast/phpunit-polyfills: ^1.0.1
Suggests
- ext-curl
- ext-iconv
- ext-intl
- ext-mbstring
- mf2/mf2: Microformat module that allows for parsing HTML for microformats
- dev-master
- 1.8.1
- 1.8.0
- 1.7.0
- 1.6.0
- 1.5.8
- 1.5.7
- 1.5.6
- 1.5.5
- 1.5.4
- 1.5.3
- 1.5.2
- 1.5.1
- 1.5
- 1.4.3
- 1.4.2
- 1.4.1
- 1.4
- 1.4-beta
- 1.3.3
- 1.3.2
- 1.3.1
- dev-one-dot-eight
- dev-wip/jtojnar/more-backports
- dev-wip/jtojnar/release-1.8.1
- dev-wip/jtojnar/php8.4-backport
- dev-wip/jtojnar/phpstan-registry-call
- dev-wip/jtojnar/unused-deprecations
- dev-wip/jtojnar/drop-bundle
- dev-one-dot-seven
- dev-one-dot-three
- dev-revert-400-DecodeMaybeHtml
- dev-feed-class
- dev-cache-backwards-compat
This package is auto-updated.
Last update: 2024-11-23 11:26:05 UTC
README
SimplePie is a very fast and easy-to-use class, written in PHP, that puts the 'simple' back into 'really simple syndication'. Flexible enough to suit beginners and veterans alike, SimplePie is focused on speed, ease of use, compatibility and standards compliance.
Requirements
- PHP 7.2+ (Required since SimplePie 1.8.0)
- libxml2 (certain 2.7.x releases are too buggy for words, and will crash)
- One of iconv, mbstring or intl extensions
- Optionally, intl extension, symfony/polyfill-intl-idn or cURL extension built with IDN support to support IDNs
- cURL or fsockopen()
- PCRE support
PSR-18: HTTP Client support
Since SimplePie 1.9.0 you can use a PSR-18 HTTP client like Guzzle
or every other implementation.
Please note that you would also need PSR-17 implementations of RequestFactoryInterface
and an UriFactoryInterface
implementation.
$simplepie = new \SimplePie\SimplePie(); $simplepie->set_http_client( new \GuzzleHttp\Client(), new \GuzzleHttp\Psr7\HttpFactory(), new \GuzzleHttp\Psr7\HttpFactory(), );
PSR-16: Caching support
Since SimplePie 1.8.0 you can use the PSR-16 cache from Symfony or every other implementation.
$simplepie = new \SimplePie\SimplePie(); $simplepie->set_cache( new \Symfony\Component\Cache\Psr16Cache( new \Symfony\Component\Cache\Adapter\FilesystemAdapter() ), );
What comes in the package?
src/
- SimplePie classes for use with the autoloaderautoloader.php
- The SimplePie Autoloader if you want to use the separate file version.README.markdown
- This document.LICENSES/BSD-3-Clause.txt
- A copy of the BSD license.compatibility_test/
- The SimplePie compatibility test that checks your server for required settings.demo/
- A basic feed reader demo that shows off some of SimplePie's more noticeable features.build/
- Scripts related to generating pieces of SimplePietest/
- SimplePie's unit test suite.
Where's simplepie.inc
?
Since SimplePie 1.3, we've split the classes into separate files to make it easier to maintain and use.
If you'd like a single monolithic file, see the assets in the
releases, or you can
run php build/compile.php
to generate SimplePie.compiled.php
yourself.
To start the demo
- Upload this package to your webserver.
- Make sure that the cache folder inside of the demo folder is server-writable.
- Navigate your browser to the demo folder.
Need support?
For further setup and install documentation, function references, etc., visit the wiki. If you're using the latest version off GitHub, you can also check out the API documentation.
If you can't find an answer to your question in the documentation, head on over to one of our support channels. For bug reports and feature requests, visit the issue tracker.
Project status
SimplePie is currently maintained by Malcolm Blaney.
As an open source project, SimplePie is maintained on a somewhat sporadic basis. This means that feature requests may not be fulfilled straight away, as time has to be prioritized.
If you'd like to contribute to SimplePie, the best way to get started is to fork the project on GitHub and send pull requests for patches. When doing so, please be aware of our coding standards.
The main development for the next minor release happens in master
branch.
Please create your pull requests primarily against this branch.
We do not actively provide bug fixes or security fixes for older versions. Nevertheless, you are welcome to create backport PRs if you still need support for older PHP versions. Please open your PR against the appropriate branch.
Authors and contributors
Current
- Malcolm Blaney (Maintainer, support)
Alumni
- Ryan McCue (developer, support)
- Ryan Parman (Creator, developer, evangelism, support)
- Sam Sneddon (Lead developer)
- Michael Shipley (Submitter of patches, support)
- Steve Minutillo (Submitter of patches)
Contributors
For a complete list of contributors:
- Pull down the latest SimplePie code
- In the
simplepie
directory, rungit shortlog -ns