simplexml_load_file错误/警告处理不起作用


simplexml_load_file error/warning handling not working

我在以下方面遇到问题:

$xml4 = simplexml_load_file($fulllink4, 'SimpleXMLElement', LIBXML_NOWARNING);

$fulllink 4 是动态生成的。有时在 $fulllink 4 中生成的 URL 格式不正确,我收到如下错误:

Warning: simplexml_load_file(http://xxxx.com): failed to open stream: HTTP request failed! HTTP/1.0 400 Bad Request in D:'xxxx.php on line 90

我通过添加", 'SimpleXMLElement', LIBXML_NOWARNING);"部分到它应该抑制任何错误的行,但它没有。

有谁知道我如何完全抑制该行产生的所有错误?

提前谢谢你。

试试这个:

$xml4 = simplexml_load_file($fulllink4, 'SimpleXMLElement', LIBXML_NOWARNING & LIBXML_NOERROR);

也可能(可能)正在生成您看到的错误/警告早在XML实际解析之前(即,在获取阶段,这很可能通过PHP的标准流包装器发生,即file_get_contents()等)

你可能应该看看这个:http://www.php.net/manual/en/simplexml.examples-errors.php

可以使用@来抑制错误,但被高度认为是一个坏主意。

if($xml4 = @simplexml_load_file($fulllink4, 'SimpleXMLElement', LIBXML_NOWARNING)){
    // all other references to $xml4
}