Das ist mein Code:
Code: Select all
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);
}
}
Das Problem ist: In meinem XML kann ich mehrere Hotels mit derselben ID (dasselbe Hotel) haben. mit denselben Informationen, aber unterschiedlichen Zimmern.
Wenn ich ein Hotel habe, das ich bereits in mein hotel_array eingefügt habe, möchte ich kein neues Array darin einfügen, sondern nur das Zimmerarray nehmen und in das vorhandene einfügen Hotel.
Beispiel jetzt mein Situation ist, dass:
Code: Select all
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
}
}
}
Code: Select all
hotel_array{
[0]{
id = 1,
name = 'test'
rooms{
[0]{
id = 1
}
[1]{
id = 30
}
}
}
[0]{
id = 2,
name = 'test2'
rooms{
id = 100
}
}
}