我已经通过POST传递了JSON编码的参数,我们已经在另一个PHP文件中捕获并解码了这些参数。我使用了以下代码来完成此操作。
$entityBody = file_get_contents('php://input');
$entityBody = json_decode($entityBody, true);
我已经传递了JSON编码的参数如下:
{
"id": "5",
"name": "abcd",
"imei": "1234"
}
在这里,我的代码运行得非常好。然而,我想把所有的参数都放在一个对象中,这样我们就可以有效地存储它们,因为否则会有太多的if和else来获取每个参数。因此,我对参数进行了如下编码:
device = {
"id": "5",
"name": "abcd",
"imei": "1234"
}
但它不起作用。作为JSON和PHP的新手,我不知道如何处理这种情况。我怎样才能做到这一点?
使用json_decode($_POST['device'], true)
,因为您实际上将一个名为"device"的参数传递到php文件。
您应该按如下方式传递json对象:
{"device" : {
"id": "5",
"name": "abcd",
"imei": "1234"
}}
或者如果你有一系列设备
{"device" : [{
"id": "5",
"name": "abcd",
"imei": "1234"}
]}