Подтвердить что ты не робот

Можно ли несколько раз вызвать curl_setopt с CURLOPT_HTTPHEADER, чтобы установить несколько заголовков?

Можно ли вызвать curl_setopt с помощью CURLOPT_HTTPHEADER несколько раз, чтобы установить несколько заголовков?

$url = 'http://www.example.com/';

$curlHandle = curl_init($url);
curl_setopt($curlHandle, CURLOPT_HTTPHEADER, array('Content-type: application/xml'));
curl_setopt($curlHandle, CURLOPT_HTTPHEADER, array('Authorization: gfhjui'));

$execResult = curl_exec($curlHandle);
4b9b3361

Ответ 1

После того, что curl делает внутренне для запроса (через метод, описанный в этот ответ на "Php - Отладочный завиток" ) отвечает на вопрос:" Нет, это не можно использовать вызов curl_setopt с помощью CURLOPT_HTTPHEADER. Второй вызов будет перезаписывать заголовки первого вызова.

Вместо этого функция должна быть вызвана один раз со всеми заголовками:

$headers = array(
    'Content-type: application/xml',
    'Authorization: gfhjui',
);
curl_setopt($curlHandle, CURLOPT_HTTPHEADER, $headers);

Связанные (но разные) вопросы:

Ответ 2

Другой тип формата:

$headers[] = 'Accept: application/json';
$headers[] = 'Content-Type: application/json';
$headers[] = 'Content-length: 0';

curl_setopt($curlHandle, CURLOPT_HTTPHEADER, $headers);