Open Journal Systems  3.3.0
HeaderCollection.php
1 <?php
2 
4 
6 
10 class HeaderCollection implements \IteratorAggregate, \Countable, \ArrayAccess, ToArrayInterface
11 {
13  protected $headers;
14 
15  public function __construct($headers = array())
16  {
17  $this->headers = $headers;
18  }
19 
20  public function __clone()
21  {
22  foreach ($this->headers as &$header) {
23  $header = clone $header;
24  }
25  }
26 
30  public function clear()
31  {
32  $this->headers = array();
33  }
34 
42  public function add(HeaderInterface $header)
43  {
44  $this->headers[strtolower($header->getName())] = $header;
45 
46  return $this;
47  }
48 
54  public function getAll()
55  {
56  return $this->headers;
57  }
58 
62  public function get($key)
63  {
64  return $this->offsetGet($key);
65  }
66 
67  public function count()
68  {
69  return count($this->headers);
70  }
71 
72  public function offsetExists($offset)
73  {
74  return isset($this->headers[strtolower($offset)]);
75  }
76 
77  public function offsetGet($offset)
78  {
79  $l = strtolower($offset);
80 
81  return isset($this->headers[$l]) ? $this->headers[$l] : null;
82  }
83 
84  public function offsetSet($offset, $value)
85  {
86  $this->add($value);
87  }
88 
89  public function offsetUnset($offset)
90  {
91  unset($this->headers[strtolower($offset)]);
92  }
93 
94  public function getIterator()
95  {
96  return new \ArrayIterator($this->headers);
97  }
98 
99  public function toArray()
100  {
101  $result = array();
102  foreach ($this->headers as $header) {
103  $result[$header->getName()] = $header->toArray();
104  }
105 
106  return $result;
107  }
108 }
Guzzle\Http\Message\Header\HeaderCollection\getIterator
getIterator()
Definition: HeaderCollection.php:97
Guzzle\Common\ToArrayInterface
Definition: paymethod/paypal/lib/vendor/guzzle/guzzle/src/Guzzle/Common/ToArrayInterface.php:8
Guzzle\Http\Message\Header
Definition: CacheControl.php:3
Guzzle\Http\Message\Header\HeaderCollection\toArray
toArray()
Definition: HeaderCollection.php:102
Guzzle\Http\Message\Header\HeaderCollection\offsetGet
offsetGet($offset)
Definition: HeaderCollection.php:80
Guzzle\Http\Message\Header\HeaderCollection\$headers
$headers
Definition: HeaderCollection.php:16
Guzzle\Http\Message\Header\HeaderCollection\__clone
__clone()
Definition: HeaderCollection.php:23
Guzzle\Http\Message\Header\HeaderCollection\getAll
getAll()
Definition: HeaderCollection.php:57
Guzzle\Http\Message\Header\HeaderCollection\add
add(HeaderInterface $header)
Definition: HeaderCollection.php:45
Guzzle\Http\Message\Header\HeaderCollection\offsetExists
offsetExists($offset)
Definition: HeaderCollection.php:75
Guzzle\Http\Message\Header\HeaderCollection
Definition: HeaderCollection.php:10
Guzzle\Http\Message\Header\HeaderInterface
Definition: lib/vendor/guzzle/guzzle/src/Guzzle/Http/Message/Header/HeaderInterface.php:7
Guzzle\Http\Message\Header\HeaderCollection\offsetSet
offsetSet($offset, $value)
Definition: HeaderCollection.php:87
Guzzle\Http\Message\Header\HeaderCollection\clear
clear()
Definition: HeaderCollection.php:33
Guzzle\Http\Message\Header\HeaderCollection\__construct
__construct($headers=array())
Definition: HeaderCollection.php:18
Guzzle\Http\Message\Header\$header
$header
Definition: Header.php:14
Guzzle\Http\Message\Header\HeaderCollection\offsetUnset
offsetUnset($offset)
Definition: HeaderCollection.php:92
Guzzle\Http\Message\Header\HeaderCollection\count
count()
Definition: HeaderCollection.php:70