使用PHP检查远程文件是否是格式良好的XML

时间:2009-01-13 22:14:09

标签: php xml feed

我有一个PHP驱动的站点,其中包含一个XML库存源,它是从ASP远程提供的(即XML源URL的顺序为:http://remote.com/client.asp)。

由于Feed通常不可用(我的意思是网站返回ASP错误)我想在包含它之前检查Feed是否是格式良好的XML。我通常的url_exists函数不起作用,因为即使“错误”,URL确实存在。

TIA。

1 个答案:

答案 0 :(得分: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
}