wp_remote_retrieve_cookie()
Получает данные отдельной указанной куки из переданного ответа на запрос.
Работает на основе: wp_remote_retrieve_cookies()
Основа для: wp_remote_retrieve_cookie_value()
Хуков нет.
Возвращает
WP_Http_Cookie|Строку
. Объект WP_Http_Cookie. Пустую строку, если указанной куки нет в ответе на запрос.
Использование
wp_remote_retrieve_cookie( $response, $name );
- $response(массив) (обязательный)
- Ответ на запрос полученный одной из функций: wp_remote_*()
- $name(строка) (обязательный)
- Название куки, данные (объект) которой нужно получить.
Примеры
#1 Получим данные отдельной куки
Допустим, мы отправили запрос и в ответе получили 2 куки: mycookie и mycook. Теперь нам нужно получить данные одной куки mycookie. Под данными подразумевается не значение куки, а все данные куки, которые представлены в виде объекта WP_Http_Cookie
Для демонстрации такого запроса, воспользуемся сервисом httpbin.org, который позволяет устанавливать куки в получаемый ответ от сервера.
$url = 'https://httpbin.org/cookies/set?mycookie=value1&mycook=value2'; // отправляем запрос $response = wp_remote_get( $url ); $mycookie = wp_remote_retrieve_cookie( $response, 'mycookie'); print_r( mycookie ); /* WP_Http_Cookie Object ( [name] => mycookie [value] => value1 [expires] => [path] => / [domain] => httpbin.org ) */
Список изменений
С версии 4.4.0 | Введена. |
Код wp_remote_retrieve_cookie() wp remote retrieve cookie WP 6.6.2
function wp_remote_retrieve_cookie( $response, $name ) { $cookies = wp_remote_retrieve_cookies( $response ); if ( empty( $cookies ) ) { return ''; } foreach ( $cookies as $cookie ) { if ( $cookie->name === $name ) { return $cookie; } } return ''; }