DOMDocument::schemaValidateSource()函数是PHP中的一个内置函数,用于基于给定字符串中定义的模式来验证文档。 schemaValidate()和schemaValidateSource()之间的区别在于,前者可以接受模式文件名,而后者可以接受模式作为字符串。
用法:
bool DOMDocument::schemaValidateSource( string $source, int $flags = 0 )
参数:该函数接受上述和以下所述的两个参数:
$source:它指定包含模式的字符串。
$flags (Optional):它指定验证标志。
返回值:如果成功,则此函数返回TRUE;如果失败,则返回FALSE。
下面给出的程序说明了PHP中的DOMDocument::schemaValidateSource()函数:
程序1:
// Create a new DOMDocument
$doc = new DOMDocument;
// XSD schema
$XSD = "<?xml version=\"1.0\"?>
elementFormDefault=\"qualified\">
";// Load the XML
$doc->loadXML("<?xml version=\"1.0\"?>
Hello
22
");
// Check if XML follows the schema rule
if ($doc->schemaValidateSource($XSD)) {
echo "This document is valid!\n";
}
?>
输出:
This document is valid!
程序2:
// Create a new DOMDocument
$doc = new DOMDocument;
// RNG schema
$XSD = "<?xml version=\"1.0\"?>
elementFormDefault=\"qualified\">
";// Load the XML
$doc->loadXML("<?xml version=\"1.0\"?>
XYZ
");
// Check if XML follows the relaxNG rule
if (!$doc->schemaValidateSource($XSD)) {
echo "This document is not valid!\n";
}
?>
输出:
This document is not valid!