PHP libxml错误代码68 HTMLParserEntityRef:无名称
我正在使用PHPLibXML库来处理xml文件。作为这个过程的一部分,我设置libxml_use_internal_errors(true),从文件加载xml,并使用libxml_get_errors()检查任何xml错误 这是我的密码:PHP libxml错误代码68 HTMLParserEntityRef:无名称,php,xml,Php,Xml,我正在使用PHPLibXML库来处理xml文件。作为这个过程的一部分,我设置libxml_use_internal_errors(true),从文件加载xml,并使用libxml_get_errors()检查任何xml错误 这是我的密码: $filename = $local_dir . $file; $file_parts = pathinfo($filename); if ( $file_parts['extension'] != 'xml' ) continue; $xml_strin
$filename = $local_dir . $file;
$file_parts = pathinfo($filename);
if ( $file_parts['extension'] != 'xml' ) continue;
$xml_string = file_get_contents($filename);
// check for valid xml
libxml_use_internal_errors(true);
$doc = new DOMDocument('1.0', 'utf-8');
$doc->loadXML( $xml_string );
$xml_errors = libxml_get_errors();
if (!empty($xml_errors) ) {
echo 'There is an error in file: ' . $file . '<br>';
print_r($xml_errors);
libxml_clear_errors();
continue;
}
$filename=$local\u dir$文件
$file\u parts=pathinfo($filename);
如果($file_parts['extension']!='xml')继续;
$xml\u string=file\u get\u contents($filename);
//检查有效的xml
libxml\u使用\u内部错误(true);
$doc=新的DOMDocument('1.0','utf-8');
$doc->loadXML($xml\u字符串);
$xml_errors=libxml_get_errors();
如果(!empty($xml_错误)){
echo“文件中有错误:”.$file.“
”;
打印错误($xml\u错误);
libxml_clear_errors();
继续;
}
此代码是处理多个xml文件的循环的一部分,$filename变量设置正确
在本地Wamp服务器上,不会返回任何错误,但当我在开发服务器上运行此操作时,某些xml文件会出现以下错误:
LibXMLError对象([级别]=>2
[代码]=>68
[列]=>202
[消息]=>htmlParseEntityRef:没有名字
[文件]=>
[行]=>1
) 有人能解释一下这个错误是什么意思吗 谢谢
Anthony Lavin在XML中的某个地方有一个空的
&
,它是为字符引用的开头保留的。将其更改为&代码>
注:
如果使用$doc->load($filename)
而不是file\u get\u contents
和loadXML
,您将在错误中获得更完整的诊断信息