ホームページ > バックエンド開発 > PHPチュートリアル > PHP コードから HTTP POST データを直接送信するにはどうすればよいですか?

PHP コードから HTTP POST データを直接送信するにはどうすればよいですか?

Barbara Streisand
リリース: 2024-11-21 09:04:10
オリジナル
994 人が閲覧しました

How to Send HTTP POST Data Directly from PHP Code?

PHP での HTTP POST データの処理

フォーム データを Web サーバーに送信する場合、一般的なアプローチでは、 HTTP POST 経由でデータを送信します。ただし、特定のシナリオでは、フォームに依存せずに PHP コードから直接 POST データを送信する必要がある場合があります。

直接 POST データ送信

POST データを送信するにはPHPにおけるフォーム、cURL(Client URL Library)として知られる方法を採用することができる。その方法は次のとおりです。

$url = 'http://www.example.com';
$postData = [
    'myVar1' => 'value1',
    'myVar2' => 'value2'
];

$postFields = http_build_query($postData);

$curl = curl_init($url);
curl_setopt($curl, CURLOPT_POST, true);
curl_setopt($curl, CURLOPT_POSTFIELDS, $postFields);
curl_setopt($curl, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);

$response = curl_exec($curl);
curl_close($curl);
ログイン後にコピー

この例では、URL $url を定義し、送信したいキーと値のペアを PHP 配列 $postData に設定します。 http_build_query() を使用して、配列を HTTP 形式のクエリ文字列に変換し、$postFields に割り当てます。

curl ハンドルを初期化し、その CURLOPT_POST オプションを true に設定して、送信していることを示します。 POSTデータ。 CURLOPT_POSTFIELDS オプションは、送信するデータを指定します。また、CURLOPT_FOLLOWLOCATION (リダイレクトに従う)、CURLOPT_HEADER (応答からの HTTP ヘッダーを抑制する)、CURLOPT_RETURNTRANSFER (curl_exec() に応答を返す) など、他のさまざまなオプションも設定します。

最後に、 curl_exec() を使用してcurlリクエストを実行し、そのレスポンスを$response変数に保存します。この応答は、要件に応じて解析または処理できます。

以上がPHP コードから HTTP POST データを直接送信するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート