存取多部分/表單資料請求的原始發布資料
雖然PHP 提供了php://input 和$HTTP_RAW_POST_DATA 等機制於檢索原始POST 數據,這些方法對於多部分/表單資料請求無效。根據PHP 手冊:
「[...] php://input 不適用於enctype="multipart/form-data"。」
Multipart 的解決方案/Form -Data Forms
存取此類表單的原始資料需要解決方法。您不能直接檢索它,因為 PHP 會自動解析它。但是,您可以採用以下技巧:
<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>
注意:
雖然此解決方法解決了原始資料檢索問題,但它會導致空 $_FILES 陣列。
以上是如何在 PHP 中從多部分/表單資料請求存取原始 POST 資料?的詳細內容。更多資訊請關注PHP中文網其他相關文章!