1. ホーム
  2. php

[解決済み] CURLOPT_HTTPHEADERでcurl_setoptを複数回呼び、複数のヘッダを設定することはできますか?

2023-06-01 16:24:57

質問

私は 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);

どのように解決するのですか?

リクエストに対してcurlが内部で行っていること(下記で説明されている方法)に従って に対するこの回答は の回答で説明されている方法を使用します。 )の質問に答えています。 いいえ .

いいえ、それは curl_setopt の呼び出しと CURLOPT_HTTPHEADER を複数回呼び出すと、複数のヘッダを設定するために、毎回一つのヘッダを渡します。

2回目の呼び出しは、以前の呼び出し(例えば最初の呼び出し)のヘッダを上書きします。

代わりに、関数はすべてのヘッダで一度呼び出される必要があります。

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

関連する(しかし異なる)質問です。