mirror of
https://0xacab.org/radar/radar-wp.git
synced 2025-06-09 13:16:26 +02:00
Initial import.
This commit is contained in:
commit
86383280c9
428 changed files with 68738 additions and 0 deletions
93
vendor/guzzle/http/Guzzle/Http/Message/Header/Link.php
vendored
Normal file
93
vendor/guzzle/http/Guzzle/Http/Message/Header/Link.php
vendored
Normal file
|
@ -0,0 +1,93 @@
|
|||
<?php
|
||||
|
||||
namespace Guzzle\Http\Message\Header;
|
||||
|
||||
use Guzzle\Http\Message\Header;
|
||||
|
||||
/**
|
||||
* Provides helpful functionality for link headers
|
||||
*/
|
||||
class Link extends Header
|
||||
{
|
||||
/**
|
||||
* Add a link to the header
|
||||
*
|
||||
* @param string $url Link URL
|
||||
* @param string $rel Link rel
|
||||
* @param array $params Other link parameters
|
||||
*
|
||||
* @return self
|
||||
*/
|
||||
public function addLink($url, $rel, array $params = array())
|
||||
{
|
||||
$values = array("<{$url}>", "rel=\"{$rel}\"");
|
||||
|
||||
foreach ($params as $k => $v) {
|
||||
$values[] = "{$k}=\"{$v}\"";
|
||||
}
|
||||
|
||||
return $this->add(implode('; ', $values));
|
||||
}
|
||||
|
||||
/**
|
||||
* Check if a specific link exists for a given rel attribute
|
||||
*
|
||||
* @param string $rel rel value
|
||||
*
|
||||
* @return bool
|
||||
*/
|
||||
public function hasLink($rel)
|
||||
{
|
||||
return $this->getLink($rel) !== null;
|
||||
}
|
||||
|
||||
/**
|
||||
* Get a specific link for a given rel attribute
|
||||
*
|
||||
* @param string $rel Rel value
|
||||
*
|
||||
* @return array|null
|
||||
*/
|
||||
public function getLink($rel)
|
||||
{
|
||||
foreach ($this->getLinks() as $link) {
|
||||
if (isset($link['rel']) && $link['rel'] == $rel) {
|
||||
return $link;
|
||||
}
|
||||
}
|
||||
|
||||
return null;
|
||||
}
|
||||
|
||||
/**
|
||||
* Get an associative array of links
|
||||
*
|
||||
* For example:
|
||||
* Link: <http:/.../front.jpeg>; rel=front; type="image/jpeg", <http://.../back.jpeg>; rel=back; type="image/jpeg"
|
||||
*
|
||||
* <code>
|
||||
* var_export($response->getLinks());
|
||||
* array(
|
||||
* array(
|
||||
* 'url' => 'http:/.../front.jpeg',
|
||||
* 'rel' => 'back',
|
||||
* 'type' => 'image/jpeg',
|
||||
* )
|
||||
* )
|
||||
* </code>
|
||||
*
|
||||
* @return array
|
||||
*/
|
||||
public function getLinks()
|
||||
{
|
||||
$links = $this->parseParams();
|
||||
|
||||
foreach ($links as &$link) {
|
||||
$key = key($link);
|
||||
unset($link[$key]);
|
||||
$link['url'] = trim($key, '<> ');
|
||||
}
|
||||
|
||||
return $links;
|
||||
}
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue