我以数组格式存储xml响应。现在我需要从数组中获取像HotelLocation,hotelCode等节点属性值。下面是我的数组的格式:
Array
(
[0] => Array
(
[media] => <SOAP:Envelope xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/"><SOAP:Body><hotel:HotelMediaLinksRsp TraceId="trace" TransactionId="69B008C27F00000109CA96A4918F80C6" ResponseTime="77" xmlns:common_v25_0="http://www.travelport.com/schema/common_v25_0" xmlns:hotel="http://www.travelport.com/schema/hotel_v25_0"><hotel:HotelPropertyWithMediaItems><hotel:HotelProperty HotelChain="CP" HotelCode="36588" HotelLocation="DXB" Name="CROWNE PLAZA FESTIVAL CITY" VendorLocationKey="1tTgCxLKRUuwf3+sFMCwFg==" HotelTransportation="Limo" ReserveRequirement="Other" ParticipationLevel="Enhanced Best Available Rate participant" Availability="Available" FeaturedProperty="true" NetTransCommissionInd="C"><hotel:PropertyAddress><hotel:Address>DUBAI-FESTIVAL CITY</hotel:Address></hotel:PropertyAddress></hotel:HotelProperty></hotel:HotelPropertyWithMediaItems></hotel:HotelMediaLinksRsp></SOAP:Body></SOAP:Envelope>
)
)
(PHP)
答案 0 :(得分:0)
首先,您需要访问阵列的那一部分。
如果它存储为$MyResponse
,您可以使用[0]
访问$MyResponse[0]
。
然后我会将XML转换为数组,以便更容易访问。有关SimpleXML here.
的更多信息,请参阅$xml = new SimpleXMLElement($MyResponse[0]);
然后您可以像数组一样访问各个元素。 例如..
echo $xml->a->b->b['name'];