У меня есть следующий JSON:
{ "Переключатели": [ "Auswahl1", "Auswahl2", "Auswahl3"], "check_mk": [ "Auswahl1", "Auswahl2", "Auswahl3"], "TestGroup": [ "Auswahl1", "Auswahl2", "Auswahl3"], "принтер": [ "Auswahl1", "Auswahl2", "Auswahl3"], "САПР": [ "Auswahl1", "Auswahl2", "Auswahl3"]}
Как я могу обойти каждый объект при использовании PHP?
Мои мысли были следующие:
<?php
$jsonfile = file_get_contents('tags.json');
echo $jsonfile . "<br><br>";
$decode = json_decode($jsonfile);
foreach($decode as $key => $value) {
echo $key . $value;
}
?>
Не работает..... Также
echo $decode[1];
а также
echo $decode[1][1];
не работает..
Вам нужно добавить второй параметр в json_decode()
Этот параметр возвращает ассоциативный массив вместо существующего объекта (если он существует).
$decode = json_decode($jsonfile, TRUE);
Это преобразует ваши декодированные данные JSON в ассоциативный массив.
$jsonfile = file_get_contents('tags.json');
echo $jsonfile . "<br><br>";
$decode = json_decode($jsonfile);
теперь $decode
эквивалентен:
$decode = new stdClass();
$decode->Switches = array();
$decode->Switches[] = "Auswahl1";
$decode->Switches[] = "Auswahl2";
$decode->Switches[] = "Auswahl3";
$decode->Check_MK = array();
...