PHPackages                             tylerchr/phparess - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Utility &amp; Helpers](/categories/utility)
4. /
5. tylerchr/phparess

ActiveLibrary[Utility &amp; Helpers](/categories/utility)

tylerchr/phparess
=================

RSS feed generator for PHP

12.6k↓50%2PHP

Since Jan 4Pushed 7y ago1 watchersCompare

[ Source](https://github.com/tylerchr/phparess)[ Packagist](https://packagist.org/packages/tylerchr/phparess)[ RSS](/packages/tylerchr-phparess/feed)WikiDiscussions master Synced 1mo ago

READMEChangelogDependenciesVersions (1)Used By (0)

README
======

[](#readme)

**phparess** is a set of PHP classes for generating RSS content, based on the 2.0 spec. It consists of three public classes that are used to define feed data:

- *Feed* represents a complete RSS feed
- *Channel* represents the channel of an RSS feed
- *Item* represents an individual item in the channel

Both the channel and individual item can be created with their constructor, passing in an array of spec-defined properties to assign.

Channels
--------

[](#channels)

For example, I can create a new channel by saying:

```
$channel = new Channel(array(
	"title"=>"tylerchr's projects",
	"link"=>"http://github.com/tylerchr",
	"description"=>"tylerchr writes code on github"
));

```

We can define additional properties, such as `language,` `copyright,` and `lastBuildDate`the same way.

Items
-----

[](#items)

Items are created identically to channels, by using the constructor:

```
$item = new Item(array(
	"title"=>"phparess (tylerchr project)",
	"link"=>"http://github.com/tylerchr/phparess",
	"description"=>"phparess is for generating simple RSS content"
));

```

Again, additional item properties can be added into the array, given that they are part of the RSS 2.0 spec. Non-specced properties will not be added.

We add items to our channel by saying `$channel->addItem($item)` and if we want to add many items at once, we can say `$channel->addItems($items)` passing in an array of `Item` objects.

The final feed
--------------

[](#the-final-feed)

When we want to get the complete feed, we create a `Feed` object, set the channel, and then we can echo it back out. This is trivial, and to be true to spec, we should add a MIME type declaration at the top:

```
header('Content-type: application/rss+xml');
$rss = new Feed();
$rss->setChannel($channel);
echo $rss;

```

Feedback
--------

[](#feedback)

Feedback is welcome, but keep in mind that this is a work in progress.

###  Health Score

25

—

LowBetter than 37% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity23

Limited adoption so far

Community12

Small or concentrated contributor base

Maturity38

Early-stage or recently created project

 Bus Factor1

Top contributor holds 61.9% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

### Community

Maintainers

![](https://www.gravatar.com/avatar/651b6caee6efb853a0c59e40824c85d027773d20cadd37fd5ac03ada7af6c7fb?d=identicon)[tylerchr](/maintainers/tylerchr)

---

Top Contributors

[![rickard2](https://avatars.githubusercontent.com/u/488425?v=4)](https://github.com/rickard2 "rickard2 (13 commits)")[![tylerchr](https://avatars.githubusercontent.com/u/112462?v=4)](https://github.com/tylerchr "tylerchr (7 commits)")[![montaniasystemab](https://avatars.githubusercontent.com/u/12112548?v=4)](https://github.com/montaniasystemab "montaniasystemab (1 commits)")

### Embed Badge

![Health badge](/badges/tylerchr-phparess/health.svg)

```
[![Health](https://phpackages.com/badges/tylerchr-phparess/health.svg)](https://phpackages.com/packages/tylerchr-phparess)
```

###  Alternatives

[cubear/finder

Finder is a Drupal 8 module to help users find services which meet their criteria

404.2k](/packages/cubear-finder)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
