【发布时间】:2015-03-20 15:04:20
【问题描述】:
{
"available":18,
"bind":0,
"info":"",
"hours_definitions":[
{
"value":"21:40"
},
{
"value":"22:50"
}
],
"hours":{
"21:40":{
"available":1,
"bind":0,
"info":"",
"notes":"",
"price":3000,
"promo":0,
"status":"available"
},
"22:50":{
"available":1,
"bind":0,
"info":"",
"notes":"",
"price":3000,
"promo":0,
"status":"available"
}
},
"notes":"",
"price":2000,
"promo":0,
"status":"available"
}
我有 JSON 数组 ($dataar),我需要将“可用”更改为 0,其中“小时”数组 21:40。
我正在尝试使用 foreach:
$dataar1 = json_decode($dataar, true);
$dataar2 = $dataar1['hours'];
$hour = "21:40";
foreach ($dataar2 as $key => $entry) {
if ($key == $hour) {
$dataar2[$key]['available'] = 0;
}
}
我得到了$dataar2[$key]['available'] = 0,但是当我尝试将json_encode 回复回来时,我又看到了available:1。
我该如何解决?
【问题讨论】:
-
添加用于将其编码回 JSON 的代码 - 我认为您可能没有对正确的变量进行编码。