CURLOPT_POSTFIELDS と cURL の POST データ形式
POST リクエストに cURL を使用する場合、CURLOPT_POSTFIELDS を通じて送信されるデータの形式は、の性質data.
文字列データ:
「first=John&last=Smith」などの文字列を送信する場合は、urlencode() を使用してエンコードする必要があります。これにより、アンパサンド (&) などの文字がデータ送信に干渉するのを防ぎます。
配列データ:
配列データの場合、cURL は Content-Type ヘッダーをマルチパートに自動的に設定します。 /form-data: マルチパート フォーム データを送信するために不可欠です。配列内の各キーと値のペアは、フォーム フィールドとその値に対応します。
たとえば、配列 $data = ['first' => があるとします。 'ジョン'、'最後' => 'Smith'] では、CURLOPT_POSTFIELDS を次のように設定できます:
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
cURL は、必要なマルチパート フォーム データ エンコーディングを自動的に生成します。
ヘルパー関数:
以下を使用すると、配列データのクエリ文字列を構築するプロセスを簡素化できます。 http_build_query() 関数:
$query = http_build_query($data, '', '&'); curl_setopt($ch, CURLOPT_POSTFIELDS, $query);
以上がCURLOPT_POSTFIELDS は cURL POST リクエストの文字列および配列データをどのように処理しますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。