У меня есть два xml-файла, которые обновляются с помощью expedia api.Я пытаюсь получить информацию о комнате и код комнаты от одного и найти этот код комнаты в другом XML-файле, чтобы получить необходимую информацию.Но я не могу понять, как это сделать.Вот схема XML:
XML 1 (hotel_request.xml):
<RoomTypes size="3">
<RoomType roomCode="9995" roomTypeId="157240">
<description>Standard</description>
</RoomType>
</RoomTypes>
XML 2 (room_request.xml)
<rateCode>9995</rateCode>
<roomTypeCode>9995</roomTypeCode>
<rateDescription>Standard - Super Saver- No meals included</rateDescription>
<roomTypeDescription>Standard - Super Saver- No meals included</roomTypeDescription>
Я могу подключитьсяк каждому файлу успешно, но у меня есть многочисленные результаты из первого файла XML.Поэтому мне пришлось использовать цикл foreach, чтобы пройти через него и повторить каждую комнату отдельно:
PHP:
//Getting xml file and data
$data = simplexml_load_file('hotel_request.xml');
$info = $data->HotelSummary;
//foreach loop to go through and echo out all rooms
foreach($data->RoomTypes as $rooms):
$roomCode = $rooms->RoomType['roomCode'];
$roomName = $rooms->RoomType->description;
endforeach;
//Now I need to go through this above loop and get the roomCode, then look for that roomCode in the second xml file and get all it's associated information. So this is what I tried which DID NOT work:
foreach($data->RoomTypes as $rooms):
$roomCode = $rooms->RoomType['roomCode'];
$roomName = $rooms->RoomType->description;
//Here is where I added in other file
$avail = simplexml_load_file('room_request.xml');
foreach($avail->HotelRoomResponse->$roomCode as $rooms):
$promo = $rooms->RateInfos->RateInfo->ChargeableRateInfo->NightlyRatesPerRoom->NightlyRate['promo'];
endforeach;
endforeach;
Пожалуйста, надеюсь, кто-нибудь может мне помочь.Спасибо !!!