Я попытался использовать PHP-декодирование для синтаксического анализа строки JSON ниже в массив, чтобы я мог извлечь текущий и день для обоих каналов из файла.Проблема с массивом JSON для PHP
мой файл JSON owl_output.json выглядит ..
{"channels":{"0":[{"current":1288,"units":"w"},{"day":31278.57,"units":"wh"}],"1": [{"current":660,"units":"w"},{"day":9191.11,"units":"wh"}]}}
I'am только когда-либо получить один результат отображается код PHP, мне удалось получить работу ниже
<?php
$string = file_get_contents('owl_output.json');
$data = json_decode($string,true);
print_r($json);
foreach ($data['channels']['0'] as $data)
{
echo $data ['current'];
}
?>
Этом только отображает ток для канала 0. Если я пытаюсь добавить дополнительные поля, он не отображает
echo $ data ['current'] ['day']; (не работает)
Может кто-нибудь посоветует, как я могу отображать текущий и день для обоих каналов 0 & 1?
Моя цель - показать это на странице html в конце и продолжить опрос json-файла?
массив отображается ниже
Array
(
[channels] => Array
(
[0] => Array
(
[0] => Array
(
[current] => 1288
[units] => w
)
[1] => Array
(
[day] => 31278.57
[units] => wh
)
)
[1] => Array
(
[0] => Array
(
[current] => 660
[units] => w
)
[1] => Array
(
[day] => 9191.11
[units] => wh
)
)
)
)
Может кто-нибудь предложить любую помощь с этим?
Благодаря
Вы должны перебираем '$ данных [ 'каналов']', а не '$ данных [ 'Каналы'] [0]'. –