Tôi đang cố gắng sử dụng SimpleXML để tải URL từ xa.Sử dụng SimpleXML để tải URL từ xa
Nếu tôi nhập vào trình duyệt của mình như sau;
http://api.ean.com/ean-services/rs/hotel/v3/list?cid=55505&minorRev=12&apiKey=2hkhej72gxyas3ky6hhjtsga&locale=en_US¤cyCode=USD&customerIpAddress=10.184.2.9&customerUserAgent=Mozilla/5.0+(Windows;+U;+Windows+NT+6.1;+en-US;+rv:1.9.2.25)+Gecko/20111212+Firefox/3.6.25&customerSessionId=&xml=<HotelListRequest><arrivalDate>01/22/2012</arrivalDate><departureDate>01/24/2012</departureDate><RoomGroup><Room><numberOfAdults>1</numberOfAdults><numberOfChildren>1</numberOfChildren><childAges>4</childAges></Room></RoomGroup><city>Amsterdam</city><countryCode>NL</countryCode><supplierCacheTolerance>MED</supplierCacheTolerance></HotelListRequest>
Nó hoạt động!
Nếu tôi thử;
$url = 'http://api.ean.com/ean-services/rs/hotel/v3/list?cid=55505&minorRev=12&apiKey=2hkhej72gxyas3ky6hhjtsga&locale=en_US¤cyCode=USD&customerIpAddress=10.184.2.9&customerUserAgent=Mozilla/5.0+(Windows;+U;+Windows+NT+6.1;+en-US;+rv:1.9.2.25)+Gecko/20111212+Firefox/3.6.25&customerSessionId=&xml=<HotelListRequest><arrivalDate>01/22/2012</arrivalDate><departureDate>01/24/2012</departureDate><RoomGroup><Room><numberOfAdults>1</numberOfAdults><numberOfChildren>1</numberOfChildren><childAges>4</childAges></Room></RoomGroup><city>Amsterdam</city><countryCode>NL</countryCode><supplierCacheTolerance>MED</supplierCacheTolerance></HotelListRequest> ';
$xml = simplexml_load_file($url);
Tôi gặp phải lỗi sau;
Warning: simplexml_load_file() [function.simplexml-load-file]: http://api.ean.com/ean-services/rs/hotel/v3/list?cid=55505&minorRev=12&apiKey=2hkhej72gxyas3ky6hhjtsga&locale=en_US¤cyCode=USD&customerIpAddress=10.184.2.9&customerUserAgent=Mozilla/5.0%2B(Windows;%2BU;%2BWindows%2BNT%2B6.1;%2Ben-US;%2Brv:1.9.2.25)%2BGecko/20111212%2BFirefox/3.6.25&customerSessionId=&xml=%3CHotelListRequest%3E%3CarrivalDate%3E01/22/2012%3C/arrivalDate%3E%3CdepartureDate%3E01/24/2012%3C/departureDate%3E%3CRoomGroup%3E%3CRoom%3E%3CnumberOfAdults%3E1%3C/numberOfAdults%3E%3CnumberOfChildren%3E1%3C/numberOfChildren%3E%3CchildAges%3E4%3C/childAges%3E%3C/Room%3E%3C/RoomGroup%3E%3Ccity%3EAmsterdam%3C/city%3E%3CcountryCode%3ENL%3C/countryCode%3E%3CsupplierCacheTolerance%3EMED%3C/supplierCacheTolerance%3E%3C/HotelListRequest%3E%20:1: parser error : Start tag expected, '<' not found in C:\Program Files\XAMPP\xampplite\htdocs\hotel\results.php on line 29
Phần đáng chú ý nhất của lỗi đó là: lỗi phân tích cú pháp: Bắt đầu từ khóa mong đợi, '<' không tìm thấy
Tôi muốn truy cập vào tập tin đó và sử dụng PHP/SimpleXML để định dạng kết quả - nhưng cho đến nay tôi bị mắc kẹt.
Tôi nghĩ rằng chủ đề này HERE mà nói về rawurlencode có thể đã giúp nhưng nó đã không, hoặc là hoặc tôi đang thiếu một cái gì đó.
Cảm ơn dường như trả về mảng nhưng bạn có thể cho tôi biết URL đó làm cho JSON giống như XML cho tôi và cũng là ví dụ làm việc với dữ liệu được trả lại từ trên; tức là echo $ xml-> hotelId [1]; hoặc một cái gì đó tương tự? Cảm ơn bạn đã giúp đỡ. – Wordpressing
Url không chỉ định mã hóa - tiêu đề Chấp nhận của nó là liều. Ví dụ của bạn là khá nhiều trên trac đúng, nhưng bạn nên sử dụng một câu hỏi riêng cho phần đối tượng $ XML. Xin đừng quên chấp nhận! – Mbrevda
Ok điều đó có ý nghĩa hơn với tôi bây giờ, cảm ơn sự giúp đỡ của bạn! – Wordpressing