PHPackages                             lewiscowles/rfc1867 - 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. lewiscowles/rfc1867

ActiveLibrary

lewiscowles/rfc1867
===================

rfc-1867 implementation for PHP

2.0.1(8y ago)1131[4 issues](https://github.com/Lewiscowles1986/rfc1867/issues)[2 PRs](https://github.com/Lewiscowles1986/rfc1867/pulls)AGPL-3.0PHPPHP &gt;=7.0CI failing

Since Jul 10Pushed 5y ago1 watchersCompare

[ Source](https://github.com/Lewiscowles1986/rfc1867)[ Packagist](https://packagist.org/packages/lewiscowles/rfc1867)[ RSS](/packages/lewiscowles-rfc1867/feed)WikiDiscussions main Synced 3d ago

READMEChangelog (5)Dependencies (3)Versions (7)Used By (0)

rfc1867
=======

[](#rfc1867)

[![Build Status](https://camo.githubusercontent.com/9574d4b35554b75f70c88312ac62b1f286bd5382683e2065f035f52eb79a21c6/68747470733a2f2f7472617669732d63692e6f72672f4c65776973636f776c6573313938362f726663313836372e7376673f6272616e63683d6d6173746572)](https://travis-ci.org/Lewiscowles1986/rfc1867)

Fresh PHP implementation of rfc1867

- Originally I had planned on using
    - bound to CURL (we all use it, but I found the API cumbersome)
    - I wanted to be able to inject any PSR compliant Request source instead
    - Turns out it doesn't support multipart (this now passes the examples given in the RFC, I would like to make it more Robust)
    - I wanted to put a composer.json in and bundle it onto packagist

Working with
------------

[](#working-with)

### composer

[](#composer)

```
composer require lewiscowles/rfc1867
composer install
composer dumpautoload

```

### dev testing

[](#dev-testing)

```
git clone https://github.com/Lewiscowles1986/rfc1867
cd rfc1867
composer install
composer dumpautoload
phpunit

```

### Class Diagram

[](#class-diagram)

#### Overview (using plantUML)

[](#overview-using-plantuml)

[![Class Relationship Diagram](diagram/class-relationship.png?raw=true "Class Relationship Diagram")](diagram/class-relationship.png?raw=true)

#### Application-level view (powerpoint + plantUML SVG output)

[](#application-level-view-powerpoint--plantuml-svg-output)

[![Another Class Relationship Diagram](https://github.com/Lewiscowles1986/rfc1867/raw/master/diagram/Another-Class-Relationship-Diagram.png)](https://github.com/Lewiscowles1986/rfc1867/blob/master/diagram/Another-Class-Relationship-Diagram.png)

Contributing
------------

[](#contributing)

I'd really like to ensure this is more robust (presently it's a reference coded in a few hours)

- We need issues so that unit-test cases can be made
- We need testing with an endpoint that parses rfc1867
- We need clarification on binary encoding format and to encompass that into Attachment implementation
- We probably need to split into a few smaller projects
    - separate `NodeInterface` repo
    - separate `FormInput` and `Attachment`
- See  and find related RFC's for interop &amp; advancement
    -
    -
    -
    -
- All changes require the following
    - tests to pass
    - class-diagram to be updated (as necesarry)
    - documentation to be updated (as necesarry)

Goals
-----

[](#goals)

- I'd love to be able to get a few more RFC's implemented with unit-tests.
- I'd like for this to be an alternative to reading the RFC documentation.
- I'd like to de-couple from the `guzzle/http-message` and have that only as a dev dependency for unit-tests.

###  Health Score

22

—

LowBetter than 22% of packages

Maintenance0

Infrequent updates — may be unmaintained

Popularity8

Limited adoption so far

Community10

Small or concentrated contributor base

Maturity62

Established project with proven stability

 Bus Factor1

Top contributor holds 96.2% 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.

###  Release Activity

Cadence

Every ~55 days

Total

5

Last Release

3008d ago

Major Versions

1.1.2 → 2.0.12018-02-17

PHP version history (2 changes)1.1.2PHP &gt;=5.6

2.0.1PHP &gt;=7.0

### Community

Maintainers

![](https://www.gravatar.com/avatar/9311118828e6efd86d66a7ca0991ed23fa8f3dad550931b3a90d495cb582ca8a?d=identicon)[LewisCowles1986](/maintainers/LewisCowles1986)

---

Top Contributors

[![Lewiscowles1986](https://avatars.githubusercontent.com/u/2605791?v=4)](https://github.com/Lewiscowles1986 "Lewiscowles1986 (25 commits)")[![peter279k](https://avatars.githubusercontent.com/u/9021747?v=4)](https://github.com/peter279k "peter279k (1 commits)")

---

Tags

has-unit-testshelp-wantedphprfc

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/lewiscowles-rfc1867/health.svg)

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

###  Alternatives

[league/uri-interfaces

Common tools for parsing and resolving RFC3987/RFC3986 URI

538204.9M23](/packages/league-uri-interfaces)[neuron-core/neuron-ai

The PHP Agentic Framework.

1.8k245.3k21](/packages/neuron-core-neuron-ai)[simplesamlphp/saml2

SAML2 PHP library from SimpleSAMLphp

30317.2M40](/packages/simplesamlphp-saml2)[php-heroku-client/php-heroku-client

A PHP client for the Heroku Platform API

24404.8k4](/packages/php-heroku-client-php-heroku-client)[phpro/http-tools

HTTP tools for developing more consistent HTTP implementations.

28137.8k](/packages/phpro-http-tools)[aedart/athenaeum

Athenaeum is a mono repository; a collection of various PHP packages

245.2k](/packages/aedart-athenaeum)

PHPackages © 2026

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