innmind / media-type
Model of media types
2.0.0
2022-01-15 17:07 UTC
Requires
- php: ~8.0
- innmind/immutable: ~4.0
Requires (Dev)
- innmind/black-box: ^4.17
- innmind/coding-standard: ~2.0
- phpunit/phpunit: ~9.0
- vimeo/psalm: ~4.1
Suggests
- innmind/black-box: For property based testing
Provides
Conflicts
- innmind/black-box: <4.1|~5.0
README
Model to validate media types (follows RFC6838).
Installation
composer install innmind/media-type
Usage
use Innmind\MediaType\MediaType; $type = MediaType::of('application/json+some-extension; charset=utf-8'); $type->topLevel(); // application $type->subType(); // json $type->suffix(); // some-extension $type->parameters()->first()->name(); // charset $type->parameters()->first()->value(); // utf-8 $type->toString(); // application/json+some-extension; charset=utf-8
If the values are incorrect it will throw an exception. Or you can use MediaType::maybe()
that will return an instance of Innmind\Immutable\Maybe
.