borschphp / mimetype
MimeType和MediaType的实现。
1.0.0
2021-11-26 12:04 UTC
Requires
- php: ^7.2 || ^8.0
Requires (Dev)
- phpunit/phpunit: ^9
README
MimeType和MediaType的实现。
安装
此项目需要PHP 7.2或更高版本。
通过Composer,只需运行
composer require borschphp/mimetype
基本用法
轻松为请求创建Mime Type
use Borsch\MimeType\MimeType; use Laminas\Diactoros\Request; use Laminas\Diactoros\Uri; $mime_type = new MimeType('application', 'json', ['charset' => 'UTF-8']); $request = (new Request()) ->withUri(new Uri('http://example.com')) ->withMethod('GET') ->withAddedHeader('Content-Type', (string)$mime_type);
或媒体类型
use Borsch\MimeType\MediaType; use Laminas\Diactoros\Request; use Laminas\Diactoros\Uri; $request = (new Request()) ->withUri(new Uri('http://example.com')) ->withMethod('GET') ->withAddedHeader('Content-Type', MediaType::APPLICATION_JSON);
解析Mime Types并获取有用数据
use Borsch\MimeType\MimeType; use Borsch\MimeType\MediaType; $mime_type = MimeType::createFromString( 'application/atom+xml;charset=utf-8;boundary=3d6b6a416f9b5;name=some_file' ); $mime_type->getType(); // application $mime_type->getSubtype(); // atom+xml $mime_type->getSubtypeSuffix() // xml $mime_type->getCharset(); // utf-8 $mime_type->getParameters(); // ['charset' => 'utf-8', 'boundary' => '3d6b6a416f9b5', 'name' => 'some_file'] $mime_type->getParameter('boundary'); // 3d6b6a416f9b5 $media_type = new MediaType('image', 'png', ['q' => 0.8]); $media_type->getQualityValue(); // 0.8 $media_type->removeQualityValue(); $media_type->getQualityValue(); // null
贡献
请参阅CONTRIBUTING.md以获取详细信息。
测试
使用PHPUnit制作,只需运行
./vendor/bin/phpunit tests
许可证
此项目采用MIT许可证。
有关更多详细信息,请参阅LICENSE.md文件。