PHP での JSON 処理を理解する
Content-Type ヘッダーが application/json に設定された AJAX リクエストを介してデータを送信する場合、 PHP の $_POST 配列はサーバー側で空のままのようです。これは、PHP が php://input ストリームからの JSON データをネイティブに解析しないために発生します。
なぜこれが起こるのか
デフォルトでは、PHP はクライアントから受信したデータを処理します。 x-www-form-urlencoded エンコーディングを使用したサイドリクエスト。 Content-Type が application/json に設定されている場合、リクエスト本文には生の JSON データが含まれますが、PHP はこれを一般的なフォーム パラメータとして解釈しません。
解決策: JSON リクエストの処理
この問題を解決し、PHP で JSON リクエストを適切に処理するには、次のアプローチを使用できます。
<code class="php"><?php var_dump(json_decode(file_get_contents('php://input'))); ?></code>
説明
var_dump() 関数デコードされた JSON データを表示するために使用されます。 file_get_contents('php://input') 関数は、JSON リクエスト本文を含む生データを php://input ストリームから読み取ります。最後に、 json_decode() 関数は JSON 文字列を PHP 変数に解析します。
以上がPHP で JSON リクエストを正しく処理する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。