面倒な fsockopen() メソッドを使用した後、PHP 関数ライブラリで POST リクエストを行うためのより簡単な方法を探し始めました。このとき、PHP のファイル関数にもリモート URL を操作できることがわかりました。
最も単純なものは、fopen() 関数と fread() 関数です。
リーリー次に file_get_contents() 関数:
リーリーしかし、これら 2 つの方法では、GET を介して情報を送信したり、Web ページ情報を読み取ったりすることしかできないことがわかります。さらに、これら 2 つの方法は、タイムアウトやヘッダー情報を処理できないなどの問題にも直面します。
ただし、file_get_contents() の関数プロトタイプを詳しく見てみましょう:
リーリーその他のオプションのパラメータがあることがわかりました。これらのパラメータを設定すると、Web ページリクエストの送信中にデータを POST 出力できるようになります。各パラメータの意味は以下で説明されています。
file_get_contents を介して POST リクエストを送信する際の焦点は、stream_context_create() 関数を使用してコンテキストを設定することです。
stream_context_create() によって作成されたコンテキスト オプションは、ストリームまたはファイル システムに使用できます。これは、ファイル ハンドルを使用せずにファイル名を直接操作する file_get_contents()、file_put_contents()、readfile() などの関数でより便利です。 stream_context_create() へのヘッダーの追加は関数の一部にすぎません。プロキシやタイムアウトなども定義できます。
stream_context_create() 関数のプロトタイプを見てみましょう:
リーリーこの関数は、設定配列を渡すことでリソースタイプのコンテキストオプションを取得するために使用されていることがわかります。
リーリー
コンテキストを設定した後、file_get_contents() 関数を通じて POST データを送信します。
リーリーPOST リクエストの完全な例を次に示します:
リーリーこの記事が役立つと思われる場合は、お勧めするか、フォローしてください。また、ご質問がございましたら、以下にメッセージを残してください。ありがとうございます。