【发布时间】:2020-12-31 07:52:43
【问题描述】:
我正在使用 ajax 进行发布请求并以 json 格式发送数据。然后我正在使用 php 获取 json 并将其解码为一个数组。当我打印出整个数组时没有问题。我可以看到键值对。但是当我尝试打印出这个数组的索引值之一时,它返回 null。可能是什么问题?这是我的 ajax 请求
$(function() {
$("#del").click(function() {
var file_id = 32
var file_update = 1321321
var obj = {
file_id: file_id,
file_update: file_update
};
$.ajax({
type: "post",
url: "config/ajax.php",
data: {
"file_update": JSON.stringify(obj)
},
success: function(response) {
alert(response);
}
})
})
})
这是我的 php 代码
if (isset($_POST["file_update"])) {
$file_update = json_decode($_POST["file_update"], true);
$x = $file_update[0];
var_dump($x);
var_dump($file_update);
}
【问题讨论】:
-
应该是
$file_update['file_id']或$file_update['file_update'] -
你为什么使用 JSON?只需使用
data: obj,然后您就可以使用$_POST['file_id']和$_POST['file_update']。 -
谢谢@Barmar 它成功了。我没想到我可以直接将obj 发送到php
-
{"file_update": JSON.stringify(obj)}是一个对象,不是吗?那和obj有什么区别?