simplexml_load_string警告

时间:2012-10-18 13:52:16

标签: php simplexml libxml2

我正在使用php的simplexml_load_string函数将xml字符串转换为可用于futhur处理的对象。

我这样编码:

simplexml_load_string( $strXml, NULL, LIBXML_NOWARNING );

发出警告信息但正确执行。

好像我这样编码:

simplexml_load_string( $strXml, NULL, LIBXML_ERR_NONE );

无法执行服务。

我已经尝试过LIBXML_ERR_NONELIBXML_ERR_ERROR

有没有办法获取对象但没有警告信息?

2 个答案:

答案 0 :(得分:1)

您可以通过调用libxml_use_internal_errors来抑制这些错误。

libxml_use_internal_errors (true);
$xml = simplexml_load_string($user_input);
if (!$xml) {
    $xml_errors = libxml_get_errors();
    foreach ($xml_errors as $err) {
        var_dump($err);
    }
    libxml_clear_errors();
}

您可能还想签出libxml_get_errorslibxml_clear_errors

答案 1 :(得分:0)

这对我有用。

simplexml_load_string($strXml, 'SimpleXMLElement', LIBXML_NOWARNING | LIBXML_NOERROR);