検索
ホームページphp教程PHP源码PHP で POST データを取得する 3 つの方法

方法 1、$_POST

$_POST または $_REQUEST は、PHP でフォーマットされたデータを key=>value の形式で保存します。

方法 2、file_get_contents("php://input") を使用します

Content-Type が指定されていない POST データの場合は、file_get_contents("php://input"); を使用して元のデータを取得できます。
実際、PHP を使用して POST で受信したデータはすべてこのメソッドを使用します。 Content-Type に関係なく、バイナリ ファイル ストリームを含めることも可能です。
$HTTP_RAW_POST_DATA と比較して、メモリへの負担が少なく、特別な php.ini 設定は必要ありません。
php://input は、Content-Type が multipart/form-data である POST データを読み取ることができません。php.ini の always_populate_raw_post_data 値を On に設定する必要があります。
php://input は $_GET データを読み取ることができません。これは、$_GET データが http リクエストの本文部分ではなく、http リクエスト ヘッダーの PATH フィールドに query_path として書き込まれているためです。

方法 3、グローバル変数 $GLOBALS[‘HTTP_RAW_POST_DATA’] を使用します

POST からの元のデータは $GLOBALS[‘HTTP_RAW_POST_DATA’] に保存されます。
ただし、POSTデータが$GLOBALS['HTTP_RAW_POST_DATA']に保存されるかは、centent-Typeの設定に依存します。PHPがContent-Typeを認識できない場合のみ、POSTデータがそのまま変数に格納されます。 GLOBALS['HTTP_RAW_POST_DATA']、Content-Type=application/x-www-form-urlencoded の場合、この変数は空です。
さらに、Content-Type が multipart/form-data である POST データを読み取ることはできません。PHP が常に POST データを変数 $http_raw_post_data に入力するように、php.ini の always_populate_raw_post_data 値を On に設定する必要もあります。


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

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

PhpStorm Mac バージョン

PhpStorm Mac バージョン

最新(2018.2.1)のプロフェッショナル向けPHP統合開発ツール

SAP NetWeaver Server Adapter for Eclipse

SAP NetWeaver Server Adapter for Eclipse

Eclipse を SAP NetWeaver アプリケーション サーバーと統合します。

SublimeText3 英語版

SublimeText3 英語版

推奨: Win バージョン、コードプロンプトをサポート!

AtomエディタMac版ダウンロード

AtomエディタMac版ダウンロード

最も人気のあるオープンソースエディター

Dreamweaver Mac版

Dreamweaver Mac版

ビジュアル Web 開発ツール