- Timestamp:
- 07/06/2016 05:50:44 PM (8 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/wp-includes/class-wp-http-requests-response.php
r37431 r37989 2 2 3 3 /** 4 * Wrapper object for a Requests_Response for compatibility.4 * Wrapper object for a Requests_Response for standardisation. 5 5 * 6 6 * @package WordPress … … 8 8 * @since 4.6.0 9 9 */ 10 class WP_HTTP_Requests_Response extends WP_HTTP_Response implements ArrayAccess{10 class WP_HTTP_Requests_Response extends WP_HTTP_Response { 11 11 /** 12 12 * Requests Response object. … … 143 143 144 144 /** 145 * C heck if an ArrayAccess offset exists.145 * Convert the object to a WP_Http response array. 146 146 * 147 * This is for array access back-compat. 148 * 149 * @param string|int $key Array offset. 150 * @return bool True if the offset exists, false otherwise. 147 * @return array WP_Http response array, per WP_Http::request(). 151 148 */ 152 public function offsetExists( $key ) { 153 $allowed = array( 'headers', 'body', 'response', 'cookies', 'filename' ); 154 return in_array( $key, $allowed ); 155 } 156 157 /** 158 * Get an ArrayAccess value. 159 * 160 * This is for array access back-compat. 161 * 162 * @param string|int $key Array offset to get. 163 * @return mixed Value if the key is a valid offset, null if invalid. 164 */ 165 public function offsetGet( $key ) { 166 switch ( $key ) { 167 case 'headers': 168 return $this->get_headers(); 169 170 case 'body': 171 return $this->get_data(); 172 173 case 'response': 174 return array( 175 'code' => $this->get_status(), 176 'message' => get_status_header_desc( $this->get_status() ), 177 ); 178 179 case 'cookies': 180 return $this->get_cookies(); 181 182 case 'filename': 183 return $this->filename; 184 } 185 186 return null; 187 } 188 189 /** 190 * Set an ArrayAccess value. 191 * 192 * This is for array access back-compat. 193 * 194 * @param string|int $key Array offset to set. 195 * @param mixed $value Value to set. 196 */ 197 public function offsetSet( $key, $value ) { 198 switch ( $key ) { 199 case 'headers': 200 $this->set_headers( $value ); 201 break; 202 203 case 'body': 204 $this->set_data( $value ); 205 break; 206 207 case 'response': 208 if ( isset( $value['code'] ) ) { 209 $this->set_status( $value['code'] ); 210 } 211 break; 212 213 case 'filename': 214 $this->filename = $value; 215 break; 216 } 217 } 218 219 /** 220 * Unset an ArrayAccess value. 221 * 222 * This is for array access back-compat. 223 * 224 * @param string|int $key Array offset to remove. 225 */ 226 public function offsetUnset( $key ) { 227 $this->offsetSet( $key, null ); 149 public function to_array() { 150 return array( 151 'headers' => $this->get_headers(), 152 'body' => $this->get_data(), 153 'response' => array( 154 'code' => $this->get_status(), 155 'message' => get_status_header_desc( $this->get_status() ), 156 ), 157 'cookies' => $this->get_cookies(), 158 'filename' => $this->filename, 159 ); 228 160 } 229 161 }
Note: See TracChangeset
for help on using the changeset viewer.