при отправке заголовков CURLOPT_HEADER возврату данных не поступало. PHP CURL

Я делаю запрос POST с использованием curl и PHP, отправляя массив имени пользователя / пароля как объект JSON.

пока все работает чудесно. теперь я хотел прочитать заголовки, чтобы разобрать куки. Я знаю, что могу использовать файл / банку и протестировать это – хорошо работает. Я не хочу писать вещь на диск.

поэтому я отметил CURLOPT_HEADER как TRUE, и я могу проанализировать значение cookie.

ОДНАКО – возвращенные данные исчезли. полностью ушел … когда я флаг _HEADER FALSE – я вижу ответ.

код:

$login_array = array('login' => array('username' => $username, 'password' => $password)); $login_json = json_encode($login_array); $ch = curl_init(); curl_setopt($ch, CURLOPT_VERBOSE, TRUE); curl_setopt($ch, CURLOPT_POST, TRUE); curl_setopt($ch, CURLOPT_HEADER, TRUE); <-- this line f***s it all up... curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE); curl_setopt($ch, CURLOPT_POSTFIELDS, $login_json); curl_setopt($ch, CURLOPT_HTTPHEADER, array("Content-Type: application/json")); curl_setopt($ch, CURLOPT_URL, 'http://localhost/test/token'); $result = curl_exec($ch); $http_code = curl_getinfo($ch, CURLINFO_HTTP_CODE); if ($http_code != 200) { /* do something */ } preg_match_all('|Set-Cookie: (.*);|U', $result, $content); $cookies = implode(';', $content[1]); echo "cookie: $cookies<br>"; <-- thanks _HEADER for the cookie value $response = json_decode($result); $user_id = $response->user->id; echo 'user_id: ' . $user_id . '<br>'; <-- empty man... headers are on means body is off... 

Я копал разные должности, и кажется, что порядок выбора имеет значение. попробовал переместить их – не повезло.

мысли ?!

Использование:

 $body=mb_substr($result, curl_getinfo($ch,CURLINFO_HEADER_SIZE)); $response = json_decode($body); $user_id = $response->user->id; echo 'user_id: ' . $user_id . '<br>'; 

попробуй это

curl_setopt ($ ч, CURLOPT_NOBODY, ложь)