/var/www/hkosl.com/aga/wp-includes/Requests/Response/Headers.php


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
<?php
/**
 * Case-insensitive dictionary, suitable for HTTP headers
 *
 * @package Requests
 */

/**
 * Case-insensitive dictionary, suitable for HTTP headers
 *
 * @package Requests
 */
class Requests_Response_Headers extends Requests_Utility_CaseInsensitiveDictionary {
    
/**
     * Get the given header
     *
     * Unlike {@see self::getValues()}, this returns a string. If there are
     * multiple values, it concatenates them with a comma as per RFC2616.
     *
     * Avoid using this where commas may be used unquoted in values, such as
     * Set-Cookie headers.
     *
     * @param string $key
     * @return string Header value
     */
    
public function offsetGet($key) {
        
$key strtolower($key);
        if (!isset(
$this->data[$key])) {
            return 
null;
        }

        return 
$this->flatten($this->data[$key]);
    }

    
/**
     * Set the given item
     *
     * @throws Requests_Exception On attempting to use dictionary as list (`invalidset`)
     *
     * @param string $key Item name
     * @param string $value Item value
     */
    
public function offsetSet($key$value) {
        if (
$key === null) {
            throw new 
Requests_Exception('Object is a dictionary, not a list''invalidset');
        }

        
$key strtolower($key);

        if (!isset(
$this->data[$key])) {
            
$this->data[$key] = array();
        }

        
$this->data[$key][] = $value;
    }

    
/**
     * Get all values for a given header
     *
     * @param string $key
     * @return array Header values
     */
    
public function getValues($key) {
        
$key strtolower($key);
        if (!isset(
$this->data[$key])) {
            return 
null;
        }

        return 
$this->data[$key];
    }

    
/**
     * Flattens a value into a string
     *
     * Converts an array into a string by imploding values with a comma, as per
     * RFC2616's rules for folding headers.
     *
     * @param string|array $value Value to flatten
     * @return string Flattened value
     */
    
public function flatten($value) {
        if (
is_array($value)) {
            
$value implode(','$value);
        }

        return 
$value;
    }

    
/**
     * Get an iterator for the data
     *
     * Converts the internal
     * @return ArrayIterator
     */
    
public function getIterator() {
        return new 
Requests_Utility_FilteredIterator($this->data, array($this'flatten'));
    }
}