graviton/link-header-rel-parser
最新稳定版本:v1.0.1
Composer 安装命令:
composer require graviton/link-header-rel-parser
包简介
A small library that parses and generates RESTful Link headers with rel attributes (relations)
README 文档
README
This is a small standalone PHP library that helps with parsing and creating Link header contents with rel="" attributes
as it is used in the context of RESTful web services.
It is a tolerant parser, silently accepting invalid input. You can use the API functions to check if a given rel exists.
Installation
The preferred way to install library is through composer.
Either run
composer require graviton/link-header-rel-parser
or add
"graviton/link-header-rel-parser": "*",
to the require section of your composer.json.
Examples
Parsing headers
Parsing an existing header is easy, just pass the plain header contents to the static function:
$header = '<http://localhost/service/self>; rel="self", '<http://localhost/service/next>; rel="next"'; $linkHeader = LinkHeader::fromString($header); $selfUrl = $linkHeader->getRel('self')->getUri(); // will output 'http://localhost/service/self'
If you are using Symfony, just fetch the Link header from the Request or Response object and pass it to the library.
Creating headers
You can create header contents programmatically:
$header = new LinkHeader(); $header->add(new LinkHeaderItem('http://localhost?limit(10,10)', 'self')); $header->add(new LinkHeaderItem('http://localhost?limit(10,30)', 'next')); $header->add(new LinkHeaderItem('http://localhost?limit(10,0)', 'prev')); echo (string) $header;
Will produce
<http://localhost?limit(10,10)>; rel="self", <http://localhost?limit(10,30)>; rel="next", <http://localhost?limit(10,0)>; rel="prev"
Manipulating existing
Combining both methods above, you can also parse existing headers, manipulate them and render them.
$header = '<http://localhost/service/self>; rel="self", '<http://localhost/service/next>; rel="next"'; $linkHeader = LinkHeader::fromString($header); $linkHeader->add(new LinkHeaderItem('http://localhost?limit(10,10)', 'prev')); $linkHeader->removeRel('next'); $header->getRel('self')->setUri('http://newhost'); echo (string) $header;
Will produce
<http://newhost>; rel="self", <http://localhost?limit(10,10)>; rel="prev"
统计信息
- 总下载量: 26.17k
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 3
- 点击次数: 1
- 依赖项目数: 4
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2019-06-21