PluginProbe ʕ •ᴥ•ʔ
GiveWP – Donation Plugin and Fundraising Platform / 2.7.2
GiveWP – Donation Plugin and Fundraising Platform v2.7.2
4.16.3 4.16.2 4.16.1 4.16.0 4.15.5 4.15.4 4.15.3 4.15.2 4.15.1 4.15.0 2.3.0 2.3.1 2.3.2 2.30.0 2.31.0 2.31.1 2.32.0 2.33.0 2.33.1 2.33.2 2.33.3 2.33.4 2.33.5 2.4.0 2.4.1 2.4.2 2.4.3 2.4.4 2.4.5 2.4.6 2.4.7 2.5.0 2.5.1 2.5.10 2.5.11 2.5.12 2.5.13 2.5.2 2.5.3 2.5.4 2.5.5 2.5.6 2.5.7 2.5.8 2.5.9 2.6.0 2.6.1 2.6.2 2.6.3 2.7.0 2.7.1 2.7.2 2.7.3 2.7.4 2.7.5 2.8.0 2.8.1 2.9.0 2.9.1 2.9.2 2.9.3 2.9.4 2.9.5 2.9.6 2.9.7 3.0.0 3.0.1 3.0.2 3.0.3 3.0.4 3.1.0 3.1.1 3.1.2 3.10.0 3.11.0 3.12.0 3.12.1 3.12.2 3.12.3 3.13.0 3.14.0 3.14.1 3.14.2 3.15.0 3.15.1 3.16.0 3.16.1 3.16.2 3.16.3 3.16.4 3.16.5 3.17.0 3.17.1 3.17.2 3.18.0 3.19.0 3.19.1 3.19.2 3.19.3 3.19.4 3.2.0 3.2.1 3.2.2 3.20.0 3.21.0 3.21.1 3.22.0 3.22.1 3.22.2 3.3.0 3.3.1 3.4.0 3.4.1 3.4.2 3.5.0 3.5.1 3.6.0 3.6.1 3.6.2 3.7.0 3.8.0 3.9.0 4.0.0 4.1.0 4.1.1 4.10.0 4.10.1 4.11.0 4.12.0 4.13.0 4.13.1 4.13.2 4.14.0 4.14.1 4.14.2 4.14.3 4.14.4 4.14.5 4.14.6 4.2.0 4.2.1 4.3.0 4.3.1 4.3.2 4.4.0 4.5.0 4.6.1 4.7.0 4.7.1 4.8.0 4.8.1 4.9.0 trunk 1.9.0 2.0.0 2.0.1 2.0.2 2.0.3 2.0.4 2.0.5 2.0.6 2.0.7 2.1.0 2.1.1 2.1.2 2.1.3 2.1.4 2.1.5 2.1.6 2.1.7 2.1.8 2.10.0 2.10.1 2.10.2 2.10.3 2.10.4 2.11.0 2.11.1 2.11.2 2.11.3 2.12.0 2.12.1 2.12.2 2.12.3 2.13.0 2.13.1 2.13.2 2.13.3 2.13.4 2.14.0 2.15.0 2.16.0 2.16.1 2.17.0 2.17.1 2.17.3 2.18.0 2.18.1 2.19.1 2.19.2 2.19.3 2.19.4 2.19.5 2.19.6 2.19.7 2.19.8 2.2.0 2.2.1 2.2.2 2.2.3 2.2.4 2.2.5 2.2.6 2.20.0 2.20.1 2.20.2 2.21.0 2.21.1 2.21.2 2.21.3 2.21.4 2.22.0 2.22.1 2.22.2 2.22.3 2.23.0 2.23.1 2.23.2 2.24.0 2.24.1 2.24.2 2.25.0 2.25.1 2.25.2 2.25.3 2.26.0 2.27.0 2.27.1 2.27.2 2.27.3 2.28.0 2.29.0 2.29.1 2.29.2
give / vendor / stripe / stripe-php / lib / Util / CaseInsensitiveArray.php
give / vendor / stripe / stripe-php / lib / Util Last commit date
AutoPagingIterator.php 6 years ago CaseInsensitiveArray.php 6 years ago DefaultLogger.php 6 years ago LoggerInterface.php 6 years ago RandomGenerator.php 6 years ago RequestOptions.php 6 years ago Set.php 6 years ago Util.php 6 years ago
CaseInsensitiveArray.php
63 lines
1 <?php
2
3 namespace Stripe\Util;
4
5 use ArrayAccess;
6
7 /**
8 * CaseInsensitiveArray is an array-like class that ignores case for keys.
9 *
10 * It is used to store HTTP headers. Per RFC 2616, section 4.2:
11 * Each header field consists of a name followed by a colon (":") and the field value. Field names
12 * are case-insensitive.
13 *
14 * In the context of stripe-php, this is useful because the API will return headers with different
15 * case depending on whether HTTP/2 is used or not (with HTTP/2, headers are always in lowercase).
16 */
17 class CaseInsensitiveArray implements ArrayAccess
18 {
19 private $container = array();
20
21 public function __construct($initial_array = array())
22 {
23 $this->container = array_map("strtolower", $initial_array);
24 }
25
26 public function offsetSet($offset, $value)
27 {
28 $offset = static::maybeLowercase($offset);
29 if (is_null($offset)) {
30 $this->container[] = $value;
31 } else {
32 $this->container[$offset] = $value;
33 }
34 }
35
36 public function offsetExists($offset)
37 {
38 $offset = static::maybeLowercase($offset);
39 return isset($this->container[$offset]);
40 }
41
42 public function offsetUnset($offset)
43 {
44 $offset = static::maybeLowercase($offset);
45 unset($this->container[$offset]);
46 }
47
48 public function offsetGet($offset)
49 {
50 $offset = static::maybeLowercase($offset);
51 return isset($this->container[$offset]) ? $this->container[$offset] : null;
52 }
53
54 private static function maybeLowercase($v)
55 {
56 if (is_string($v)) {
57 return strtolower($v);
58 } else {
59 return $v;
60 }
61 }
62 }
63