Это мой код:
Код: Выделить всё
foreach ($xml->DATA as $entry){
foreach ($entry->HOTEL_DATA as $entry2){
$id = (string)$entry2->attributes()->HOTEL_CODE;
$hotel_array2 = array();
$hotel_array2['id'] = $entry2->ID;
$hotel_array2['name'] = utf8_decode($entry2->HOTEL_NAME);
$i=0;
foreach($entry2->ROOM_DATA as $room){
$room_array = array();
$room_array['id'] = (string)$room->attributes()->CCHARGES_CODE;
$hotel_array2['rooms'][$i] = array($room_array);
$i++;
}
array_push($hotel_array, $hotel_array2);
}
}
Проблема в том, что: в моем XML я могу указать несколько отелей с одинаковым идентификатором (один и тот же отель) с той же информацией, но с разными номерами.
Если у меня есть отель, который я уже вставил в свой массив hotel_array, я не хочу вставлять в него новый массив, а хочу только взять его массив номеров и вставить в существующий отель.
Пример сейчас моя ситуация такова:
Код: Выделить всё
hotel_array{
[0]{
id = 1,
name = 'test'
rooms{
id = 1
}
}
[0]{
id = 2,
name = 'test2'
rooms{
id = 100
}
}
[0]{
id = 1,
name = 'test'
rooms{
id = 30
}
}
}
Код: Выделить всё
hotel_array{
[0]{
id = 1,
name = 'test'
rooms{
[0]{
id = 1
}
[1]{
id = 30
}
}
}
[0]{
id = 2,
name = 'test2'
rooms{
id = 100
}
}
}
Подробнее здесь: https://stackoverflow.com/questions/173 ... each-group
Мобильная версия