2013-08-07 4 views
0

Я пытаюсь прочитать внешний XML-файл с PHP-скриптом, без wmatter, что я пытаюсь получить ошибку «пустой документ». Если я открою url в своем браузере, я могу получить доступ и прочитать xml-файл.XML-файл Gzip и PHP

Есть много других сообщений о переполнении стека с аналогичной проблемой, как у меня, но ни одно из решений не работает в моем случае.

Это мой код:

$url="http://xml.example.com"; 
$xml = new SimpleXMLElement("compress.zlib://$url", NULL, TRUE); 

Ошибка синтаксического анализа: Документ пуст в /home/admin/public_html/xml/index2.php на линии 4

Видимо служба третьей сторона требует, чтобы я явно запрашивать сжатие gzip.

Любые идеи?

Thanks,

Alan.

ответ

0

Ok Я получил это работает, используя локон затем createing объекта XML (я думаю!)

$ch = curl_init(); 

curl_setopt($ch,CURLOPT_ENCODING , "gzip"); 
// set url 
curl_setopt($ch, CURLOPT_URL, $url); 

//return the transfer as a string 
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); 

// $output contains the output string 
$output = curl_exec($ch); 

curl_close($ch); 

//print_r($output); 

$oXML = new SimpleXMLElement($output); 

Результатов совместимы с моим сценарием и могут быть проанализированы для извлечения данных: 0)