2013-02-24 106 views
1

我想用PHP解析XML飼料: http://trustbox.trustpilot.com/r/travelnation.co.uk.xml亂碼XML輸出

訪問這個,它看起來完全確定,但是當我嘗試

<?php 
$file = file_get_contents("http://trustbox.trustpilot.com/r/netamity.com.xml"); 
print_r($file); 
?> 

我得到

‹•SÁŽÓ0=/ÿ`ŒÄmœ- 븊àèJV«••L«ŽmÙN²ý{Æi·M 
... 

它如何變得亂碼?使用simplexml它不會解析它(不出所料)。我試過設置標題UTF-8標題,但我認爲問題在get_file_contents。有任何想法嗎?

+0

它可以與任何其他XML Feed一起使用嗎?這將是我要檢查的第一件事,看看問題出在哪一端。 – 2013-02-24 14:52:05

回答

1

僅僅因爲編碼被壓縮(參見HTTP標頭Content-Encoding: gzip),內容看起來很「怪異」。

HTTP/1.1 200 OK 
x-amz-id-2: 8wYarFnod0jtLJ3U8ZDN38102fjtG+EbwJjy0tY4YTZncrz9auEcQbzt1vyiSEhq 
x-amz-request-id: A60F1E6CA5437776 
Date: Sun, 24 Feb 2013 18:00:45 GMT 
Content-Encoding: gzip 
Last-Modified: Sun, 24 Feb 2013 05:19:11 GMT 
ETag: "64eaa6f87768aeb3ae6741ba06318cb6" 
Accept-Ranges: bytes 
Content-Type: application/xhtml+xml 
Content-Length: 52366 
Server: AmazonS3 

我猜你需要的是知道如何通過HTTP讀取文件;你可以試試this one on SO