Существует три варианта замены значения в массиве вычисленным значением в foreach
:
Во-первых, ссылка &
значение, чтобы изменить его в исходном массиве:
$array = json_decode($url2, true);
foreach($array['status'] as &$status){
$status["lc"] = $status["lc"] / 1000;
}
Во-вторых, измените исходный массив с помощью ключа:
$array = json_decode($url2, true);
foreach($array['status'] as $key => $status){
$array['status'][$key]["lc"] = $status["lc"] / 1000;
}
В-третьих, создайте новый массив результатов:
foreach(json_decode($url2, true)['status'] as $status){
$status["lc"] = $status["lc"] / 1000;
$result[] = $status;
}
// Or if you need to preserve keys:
foreach(json_decode($url2, true)['status'] as $key => $status){
$status["lc"] = $status["lc"] / 1000;
$result[$key] = $status;
}
Вы также можете сопоставить каждый элемент функциичто делает расчет:
$result = array_map(function($v) { return $v['lc'] = $v['lc'] / 1000; },
json_decode($url2, true)['status']);