首頁  >  文章  >  後端開發  >  如何在 PHP 中解碼來自 Ajax 的 JSON 資料?

如何在 PHP 中解碼來自 Ajax 的 JSON 資料?

DDD
DDD原創
2024-10-31 05:03:30485瀏覽

How to Decode JSON Data from Ajax in PHP?

在PHP 中從Ajax 解碼JSON 資料

嘗試將Ajax 請求中的JSON 資料傳送到PHP 腳本時,您可能會遇到到無法正確接收或解析資料的問題。為了解決這個問題,一個常見的問題是如何有效地從 Ajax 發送 JSON 資料並在 PHP 中對其進行解碼。

解決方案

1.刪除Content-Type 標頭

在Ajax 請求中,刪除contentType 標頭:

$.ajax({
    type: "POST",
    dataType: "json",
    url: "add_cart.php",
    data: {myData:dataString}
});

2.使用直接變數賦值

在PHP 中,直接從$_POST 存取JSON 數據,而不使用json_decode:

if(isset($_POST['myData'])){
    $obj = $_POST['myData'];
    //some php operation
}

原因

原始程式碼不起作用的原因是contentType 標頭設定為application/json。這向 PHP 表明發送的資料是 JSON 格式,但事實並非如此。資料實際上是包含 JSON 字串的普通 POST 查詢。

透過刪除 contentType 標頭,您可以將資料作為常規 POST 查詢發送,並允許 PHP 自動處理字串轉換。

以上是如何在 PHP 中解碼來自 Ajax 的 JSON 資料?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn