Skip to content

bakame-php/http-structured-fields

Folders and files

NameName
Last commit message
Last commit date

Latest commit

067c827 · Dec 14, 2024
Dec 11, 2024
Dec 14, 2024
Dec 11, 2024
Dec 7, 2024
Mar 18, 2023
Nov 9, 2024
Dec 11, 2024
Oct 26, 2024
Dec 12, 2024
Jul 4, 2022
Dec 11, 2024
Dec 7, 2024
May 7, 2023
Dec 7, 2024
May 7, 2023

Repository files navigation

HTTPsf

HTTP Structured Fields for PHP

Author Software License Build Latest Version Total Downloads Sponsor development of this project

bakame/http-structured-fields is a framework-agnostic PHP library that allows you to parse, serialize, create, update and validate HTTP Structured Fields in PHP according to the RFC9651.

Once installed you will be able to do the following:

use Bakame\Http\StructuredFields\OuterList;

//1 - parsing an Accept Header
$fieldValue = 'text/html, application/xhtml+xml, application/xml;q=0.9, image/webp, */*;q=0.8';
$container = OuterList::fromRfc9651($fieldValue);
$container[1]->value()->toString(); // returns 'application/xhtml+xml'
$container[1]->parameterByKey(key: 'q', default: 1.0); // returns 1.0 if the parameter is not defined

System Requirements

PHP >= 8.1 is required but the latest stable version of PHP is recommended.

Installation

Use composer:

composer require bakame/http-structured-fields

Documentation

Full documentation can be found at https://bakame-php.github.io/http-structured-fields

Contributing

Contributions are welcome and will be fully credited. Please see CONTRIBUTING and CODE OF CONDUCT for details.

Testing

The library:

To run the tests, run the following command from the project folder.

composer test

Security

If you discover any security related issues, please email [email protected] instead of using the issue tracker.

Credits

Attribution

The package internal parser is heavily inspired by previous work done by Gapple on Structured Field Values for PHP.

License

The MIT License (MIT). Please see License File for more information.