當 $_POST 和 $_GET 為空時如何在 PHP 中存取請求負載?

Mary-Kate Olsen
發布: 2024-11-10 16:00:04
原創
312 人瀏覽過

How to Access Request Payload in PHP When $_POST and $_GET Are Empty?

如何在PHP 中存取請求有效負載

使用ExtJS 和ajax 儲存時,請求資料可能在HTTP 請求正文中發送,而不是透過POST 或GET 參數發送。因此,$_POST 和 $_GET 保持為空。

解決方案

可以使用以下PHP 程式碼存取請求正文:

$request_body = file_get_contents('php://input');
登入後複製

如果負載是JSON 格式格式,可以使用以下方式解碼:

$data = json_decode($request_body);
登入後複製

這將使用表示JSON 的陣列填入$data變數

php://input 的背景

php://input 是一個唯讀流包裝器,提供對請求正文中的原始資料的存取。它對於 POST 請求特別有用,並且在記憶體效率和獨立於特定 php.ini 指令方面比 $HTTP_RAW_POST_DATA 具有優勢。請注意,使用 enctype="multipart/form-data" 時 php://input 不可用。

以上是當 $_POST 和 $_GET 為空時如何在 PHP 中存取請求負載?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板