Создание свойств / переменных с числовым именем объекта (occLvl_0
et c.), Как правило, является плохой идеей, поскольку затрудняет работу с ними любым обычным способом (например, с использованием al oop). Лучше практиковать помещение значений в массив:
while ($row = $GetResult->fetch()){
$occArray[] = array(
'accommodationID' => $row['accommodationID'],
'occLvl' => explode(",", $row['occLevels'])
);
}
Это даст вам вывод JSON, который выглядит примерно так:
[
{
"accommodationID": "LA56",
"occLvl": [
40,
70,
90
]
},
{
"accommodationID": "PQ45",
"occLvl": [
30,
60,
100
]
},
...
]
И в вашем JS затем вы можете перебрать массив occLvl
, чтобы получить значения.
Если вам нужны данные в описанной вами форме, то вам нужно перебрать взорванное значение occLevels
, чтобы сгенерировать отдельные значения, выдвигая их с accommodationID
в новый массив, а затем помещая этот массив в $occArray
:
while ($row = $GetResult->fetch()){
$this_occ = array(
'accommodationID' => $row['accommodationID'],
);
foreach (explode(",", $row['occLevels']) as $key => $occLvl) {
$this_occ["occLvl_$key"] = $occLvl;
}
$occArray[] = $this_occ;
}