最近在开发零五网在线工具箱,在开发 XML 转 JSON 工具时,有个需求是要判断用户输入的是否是有效的 xml 内容。
最终实现的函数如下:
function isValidXml($content)
{
$content = trim($content);
if (empty($content)) {
return false;
}
if (stripos($content, '<!DOCTYPE html>') !== false) {
return false;
}
libxml_use_internal_errors(true);
simplexml_load_string($content);
$errors = libxml_get_errors();
libxml_clear_errors();
return empty($errors);
}