2011-07-07 7 views
0

私のプロジェクトではカールを使用しています。私がリクエストを送信するとき、レスポンスはXMLの形で次のように来ています。このXMLを配列に変換してWebページに表示するにはどうすればよいですか?どのようにPHPの配列にカールのXML応答を変換するには?

<?xml version="1.0" encoding="UTF-8"?> 
    <OTA_HotelAvailRS Version="1.0"> 
     <Success Id="140948"/> 
     <Properties> 
     <Property HotelCityCode="ELS" HotelCode="18918" HotelName="Premier Hotel Regent - Demo"> 
      <RelativePosition Direction="" Distance="0" DistanceUnitName=""/> 
      <EssentialInfo> 
      </EssentialInfo> 
      <RoomStays> 
       <RoomStay> 
        <RatePlans> 
          <RatePlan RatePlanCode="50010"/> 
        </RatePlans> 
        <RoomRates> 
          <RoomRate> 
           <Rates> 
            <Rate EffectiveDate="2011-10-14" ExpireDate="2011-10-15"> 
             <Base Amount="114.00" CurrencyCode="EUR"/> 

             <RateDescription Adults="1" Availability="A" Children="0" RoomNum="1"> 
               Standard 
             </RateDescription> 
            </Rate> 
           </Rates> 
          </RoomRate> 
        </RoomRates> 
        <Meals Description="Breakfast Buffet" MealType="Breakfast"/> 
       </RoomStay> 
      </RoomStays> 
      <Promotions/> 
      <AdditionalInfo> 
       <HotelStarDetail rating="3"/> 
       <HotelImages> 
        <HotelImage Type="" URL="http://image1.urlforimages.com/1204258guest.jpg"/> 
       </HotelImages> 
       <HotelDescription> 
        <LongDescription> description</LongDescription> 
       </HotelDescription> 
      </AdditionalInfo> 
     </Property>   
</Properties> 

+1

どの言語ですか? –

+0

PHPで............... – Hearaman

答えて

5

なぜ、すべての配列に変換? PHPはXMLにかなり優れています。 XMLをSimpleXMLまたはDOMDocumentにロードして、そのまま使用してください。

$xml = new SimpleXMLElement($response); 
echo $xml->properties->property['HotelName']; 
+0

上記のxmlコードを編集しました。いくつかの大きなコードが含まれています。さて、どのように私はすべてのHotelNameを表示することができます。 – Hearaman

+0

@Hearaman:編集したXMLコードが表示されません。しかし、SimpleXMLを採用しているXMLツリーを単にforeachすることはできます。 #4の例をhttp://nl.php.net/manual/en/simplexml.examples-basic.php –

+0

お手伝いいただきありがとうございます – Hearaman

関連する問題