開發人員遇到了一個問題,即儘管通過以下方式成功傳輸了數據,但提交表單後$_POST陣列仍為空file_get_contents('php://input').
分析
調查內容類型標頭後,發現問題與使用JSON 作為內容有關類型。與多部分錶單相反,使用 JSON 內容類型會禁止資料填入 $_POST 陣列。
解決方案
為了解決此問題,開發人員提供了以下內容程式碼片段:
$_POST = json_decode(file_get_contents("php://input"), true);
此程式碼解析JSON 負載片段並片段將其轉換為關聯數組,其中然後指派給$_POST 變數。透過這樣做,可以如預期般透過 $_POST 陣列存取 JSON 有效負載中的資料。
以上是為什麼我的 PHP $_POST 陣列在提交 JSON 表單時為空?的詳細內容。更多資訊請關注PHP中文網其他相關文章!