innmind / media-type
Model of media types
2.2.0
2023-09-16 15:11 UTC
Requires
- php: ~8.2
- innmind/immutable: ~4.15|~5.0
Requires (Dev)
- innmind/black-box: ~5.0
- innmind/coding-standard: ~2.0
- phpunit/phpunit: ~10.2
- vimeo/psalm: ~5.6
Suggests
- innmind/black-box: For property based testing
Provides
Conflicts
- innmind/black-box: <5.0|~6.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
.