ホームページ >バックエンド開発 >PHPチュートリアル >multipart/form-data を使用する場合、PHP で生の POST データにアクセスするにはどうすればよいですか?
予期しない動作: 生の投稿データは利用できません
PHP マニュアルに記載されているように、php://input も $HTTP_RAW_POST_DATA も使用できませんmultipart/form-data コンテンツ タイプを持つリクエストの生の POST データを取得するために使用されます。これは、php://input を使用すると生データを効率的に取得できますが、コンテンツ タイプが multipart/form-data ではない場合にのみ機能するためです。
multipart/form-data フォームの回避策
マルチパート/フォームデータリクエストの生の投稿データに直接アクセスできないにもかかわらず、取得するための回避策が存在します。それ:
Apache Config の変更: Apache 構成ファイルに次の設定を追加します:
<Location "/backend/XXX.php"> SetEnvIf Content-Type ^(multipart/form-data)(.*) NEW_CONTENT_TYPE=multipart/form-data-alternate OLD_CONTENT_TYPE= RequestHeader set Content-Type %{NEW_CONTENT_TYPE}e env=NEW_CONTENT_TYPE </Location>
考慮事項:
以上がmultipart/form-data を使用する場合、PHP で生の POST データにアクセスするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。