PHP: Ajax リクエストを処理するための「php://input」メソッドと $_POST メソッドの選択
Ajax リクエストを操作する場合PHP では、開発者は、「php://input」とグローバル $_POST メソッドのどちらを使用するかの決定に直面するかもしれません。この記事は、両方のメソッドの利点と使用例を明らかにすることを目的としています。
php://input
「php://input」メソッドは、すべてのメソッドを返します。コンテンツ タイプに関係なく、リクエストの HTTP ヘッダーの後に受信された生データ。これは、従来の $_POST ラッパーではサポートされていない可能性がある、JSON や XML などの非標準のコンテンツ タイプを扱う場合に特に有益です。ただし、「php://input」では生データを手動で解析する必要があるため、コードが複雑になる可能性があります。
$_POST
$_POST グローバル変数通常、HTTP POST メソッド経由で送信されたフォーム データにアクセスするために使用されます。デフォルトでは、$_POST は application/x-www-form-urlencoded または multipart/form-data 形式でエンコードされたデータのみをサポートします。これにより、単純なフォーム送信の処理に適しています。ただし、追加の処理が必要となる JSON などのより複雑なデータ型や構造には適していません。
比較
要約すると、「php:/」 /input" はすべての生の HTTP リクエスト データへのアクセスを提供しますが、$_POST は特定のコンテンツ タイプに限定されます。単純なフォームの投稿の場合、またはコンテンツ タイプが application/x-www-form-urlencoded または multipart/form-data の場合、$_POST は便利なオプションです。非標準のコンテンツまたは複雑なデータの場合、「php://input」はより高い柔軟性を提供します。
以上がPHP AJAX リクエスト: `php://input` と `$_POST` – どちらのメソッドを使用する必要がありますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。