2009-01-13 26 views
8

我有一個PHP驅動的站點,其中包含一個由ASP遠程提供的XML股票饋送(即XML饋送url的順序爲:http://remote.com/client.asp)。檢查遠程文件是否爲格式良好的XML使用PHP

由於Feed常常不可用(我的意思是站點返回一個ASP錯誤),所以我想在包含它之前檢查feed是否爲格式良好的XML。我常用的url_exists函數並沒有做到這一點,因爲即使「錯誤」,URL也確實存在。

TIA。

+1

注意:小心使用術語。您所描述的內容聽起來像「格式良好」的XML,這意味着與「有效的」XML不同。 – cletus 2009-01-13 22:24:52

+0

非常正確cletus(謝謝)現在編輯... – da5id 2009-01-13 22:27:50

回答

21

使用cURL得到結果並且simplexml檢查XML是否是well-formed

$curl = curl_init(); 
curl_setopt($curl, CURLOPT_URL, "http://remote.com/client.asp"); 
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); 
$output = curl_exec($curl); 
curl_close($curl); 
if (simplexml_load_string($output)) { 
    // well-formed XML 
} else { 
    // it isn't 
} 
相關問題