ホームページ >バックエンド開発 >PHPチュートリアル >PHP で JSON POST 本文を抽出するにはどうすればよいですか?

PHP で JSON POST 本文を抽出するにはどうすればよいですか?

DDD
DDDオリジナル
2024-12-16 17:02:10429ブラウズ

How to Extract a JSON POST Body in PHP?

PHP での JSON ポスト本文の抽出

次の JSON POST データについて考えてみましょう。

{a:1}

PHP では、デフォルトの $_POST 変数にはこのデータは含まれません。代わりに、

$entityBody = file_get_contents('php://input');

を使用して未加工の HTTP リクエスト本文にアクセスします。または、STDIN 定数を使用します:

$entityBody = stream_get_contents(STDIN);

php://input はシークできず、一度しか読み取ることができないことに注意してください。 。本文が大きい場合は、ストリーム リソースを維持するために一時ファイルの使用を検討してください。

function detectRequestBody() {
    $rawInput = fopen('php://input', 'r');
    $tempStream = fopen('php://temp', 'r+');
    stream_copy_to_stream($rawInput, $tempStream);
    rewind($tempStream);

    return $tempStream;
}

PHP はすでにこのデータを解析して、POST リクエストで「multipart/form-data」ヘッダーを指定すると例外が発生します。 $_POST スーパーグローバル。

以上がPHP で JSON POST 本文を抽出するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。