谢谢你花时间阅读这篇文章。
我的php文件正在接收一个json对象。但是我在解码它的时候遇到了一些问题。
我的php代码:
$data=$_POST['arg1'];
echo $data;
$json = json_decode($data,true);
echo $json;
$i = 1;
foreach($json as $key => $value) {
print "<h3>Name".$i." : " . $value . "</h3>";
$i++;
}当我echo数据的结果如下所示。
{
"SCI-2": {
"quantity": 2,
"id": "SCI-2",
"price": 280,
"cid": "ARTCOTSB"
}
}当我回显$json时,结果如下:
数组Name1 :数组。
请协助,因为我需要访问cid和quantity值在$data中。
发布于 2016-02-20 17:13:43
json_decode返回一个数组。要打印数组,可以使用print_r或var_dump。
现在,要访问您的值,可以尝试:
$json["SCI-2"]["quantity"]表示数量,$json["SCI-2"]["cid"]表示cid。
要在foreach中访问,您需要这样做:
foreach($json as $k) {
foreach($k as $key => $value) {
print "<h3>Name".$i." : " . $value . "</h3>";
}
}发布于 2016-02-20 17:21:43
由于您不知道对象中的项数,请使用以下命令:
$obj = json_decode($json);在此之后,迭代$obj变量和在循环中使用foreach获取每个属性的之后的。
foreach($iteratedObject as $key => $value) {
//your stuff
}https://stackoverflow.com/questions/35526325
复制相似问题