PHPでPOSTリクエストを送信するにはどうすればいいですか? 質問する

PHPでPOSTリクエストを送信するにはどうすればいいですか? 質問する

実際には、検索クエリが完了したら、そのクエリの後に続くコンテンツを読み取りたいのですが、問題は、URL がPOSTメソッドのみを受け入れ、メソッドでアクションを実行しないことですGET...

domdocumentまたはを使用してすべてのコンテンツを読み取る必要があります。メソッドを使用してパラメータを送信し、 を介してコンテンツを読み取ることがfile_get_contents()できる方法はありますか?POSTPHP

ベストアンサー1

CURL を使用しない方法:

$url = 'http://server.com/path';
$data = ['key1' => 'value1', 'key2' => 'value2'];

// use key 'http' even if you send the request to https://...
$options = [
    'http' => [
        'header' => "Content-type: application/x-www-form-urlencoded\r\n",
        'method' => 'POST',
        'content' => http_build_query($data),
    ],
];

$context = stream_context_create($options);
$result = file_get_contents($url, false, $context);
if ($result === false) {
    /* Handle error */
}

var_dump($result);

メソッドの詳細とヘッダーの追加方法については、PHP マニュアルを参照してください。次に例を示します。

おすすめ記事