如何跳过HTTP / 1.1 400错误请求

时间:2014-06-06 03:17:12

标签: php xml simplexml bad-request

我从Web服务加载一些XML文件,有时会失败。

我加载所有这些XML文件,然后使用PHP + simpleXML将其渲染为一个XML。问题是,如果一个XML失败,那么我的所有最终XML都被搞砸了,因为我得到了HTTP / 1.1 400 Bad Request。

有没有办法跳过此错误?我尝试了下面的代码,但它不适合我:

$xmlDetails = simplexml_load_file($url, "SimpleXMLElement", LIBXML_NOERROR |  LIBXML_ERR_NONE | LIBXML_NOWARNING);

if ($xmlDetails)
{ here i manipulate the $xmlDetails }

1 个答案:

答案 0 :(得分:0)

您希望xml重回成功吗?因此,请检查响应,看看是否回来了。

$xmlDetails = simplexml_load_file($url, "SimpleXMLElement", LIBXML_NOERROR |  LIBXML_ERR_NONE | LIBXML_NOWARNING);

if ($xmlDetails && substr(trim($xmlDetails), 0, 4) == "<?xml"))
{ 
  // here i manipulate the $xmlDetails 
}

未经测试,但这样的事情就足够了。我建议尽可能与其中一条评论相同。单独获取xml并将其解析为两个步骤。