Вытащить переменную из многомерного JSON
Получаю трёхмерный JSON
array(3) {
["status"]=>
string(2) "OK"
["status_code"]=>
int(100)
["sms"]=>
array(1) {
["202036-1000001"]=>
array(6) {
["status"]=>
string(2) "OK"
["status_code"]=>
int(103)
["status_text"]=>
string(39) "Сообщение доставлено"
["cost"]=>
string(5) "12.62"
["send_time"]=>
int(1598945382)
["status_time"]=>
int(1598945602)
}
}
}
Нужно в переменную забрать $cost=12.62
Никак не соображу, как победить это тройное вложение
Ответы (1 шт):
Автор решения: n.osennij
→ Ссылка
Для обращения к значению массива по ключу следует заключить последний в квадратные скобки
$data['key']
По этому же принципу можно "добраться" до значений в многомерном массиве
$data['key']['key']['key']
или в вашем случае
$data['sms']['202036-1000001']['cost'];
При этом очевидно, что названия ключей можно брать из переменных, например
$someKey = '202036-1000001';
$cost = $data['sms'][$someKey]['cost'];