![](/img/trans.png)
[英]How to disable warning produced by DOMDocument::schemaValidate() when the schema is invalid?
[英]DOMDocument::schemaValidate() throwing warning errors
我有两个文件:
要根据模式验证XML文件,我一直在使用:
$dom = new DOMDocument();
//$this->xmlstr; is my XML file after being loaded into a string.
$dom->loadXML($this->xmlstr);
//$xsd_file is definitely my xsd file.
if(!$dom->schemaValidate($xsd_file)){
$errors = libxml_get_errors(); //supposed to give back errors?
var_dump($errors); //debugging - shows: array empty
}
但是,每当我的XML文档不符合架构中的规则时,我就会不断收到警告错误。
警告:DOMDocument :: schemaValidate()[domdocument.schemavalidate]:元素'标题':不期望此元素。 预计是(路由)
我一直故意搞砸我的XML文件,只是为了看看$ dom-> schemaValidate如何实际处理它。 显然,当XML不符合架构时,我不希望PHP将警告消息吐出到页面上。 相反,我希望我的应用程序能够处理这个问题。 我在这里俯瞰什么吗?
你必须打电话
libxml_use_internal_errors(true);
在创建新的DOMDocument()之前,为了抑制警告并开始将XML解析错误收集到可通过libxml_get_errors()访问的内部结构中。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.