📜  PHP | XMLReader setParserProperty()函数

📅  最后修改于: 2022-05-13 01:56:26.362000             🧑  作者: Mango

PHP | XMLReader setParserProperty()函数

XMLReader::setParserProperty()函数是PHP中的一个内置函数,用于设置解析器选项。此函数可用于验证文档。
句法:

bool XMLReader::setParserProperty( int $property, bool $value )

参数:该函数接受上面提到的两个参数,如下所述:

  • $property:它指定一个对应于 Parser Option 常量之一的整数,如下所示:
    • XMLReader::LOADDTD (1)这将加载 DTD 但不验证。
    • XMLReader::DEFAULTATTRS (2)这将加载 DTD 和默认属性,但不会验证。
    • XMLReader::VALIDATE (3)这将加载 DTD 并在解析时进行验证。
    • XMLReader::SUBST_ENTITIES (4)这将替换实体并扩展引用。
  • $value:它指定是启用还是禁用该属性。

返回值:此函数在成功时返回 TRUE,在失败时返回 FALSE。
下面的示例说明了PHP中的XMLReader::setParserProperty()函数
示例 1:

  • 数据.xml
html

    

Sample XML



php
open('data.xml');
 
// Set the Parser Property
$XMLReader->setParserProperty(XMLReader::VALIDATE, true);
 
// Check if XMLReader::VALIDATE is set or not
$isProperty = $XMLReader->getParserProperty(XMLReader::VALIDATE);
  
if ($isProperty) {
    echo 'Property is set.';
}
?>


html







]>


    

Hi

     

World

      GeeksforGeeks   Web Portal for Geeks


php
open('data.xml');
 
// Enable the Parser Property
$XMLReader->setParserProperty(XMLReader::VALIDATE, true);
 
// Iterate through the XML nodes
while ($XMLReader->read()) {
    if ($XMLReader->nodeType == XMLREADER::ELEMENT) {
 
        // Check if XML is valid or not
        $isValid = $XMLReader->isValid();
        if ($isValid) {
            echo "YES ! this node is validated
";         }     } } ?>


  • 指数。 PHP

PHP

open('data.xml');
 
// Set the Parser Property
$XMLReader->setParserProperty(XMLReader::VALIDATE, true);
 
// Check if XMLReader::VALIDATE is set or not
$isProperty = $XMLReader->getParserProperty(XMLReader::VALIDATE);
  
if ($isProperty) {
    echo 'Property is set.';
}
?>
  • 输出:
Property is set.

方案二:

  • 数据.xml

html








]>


    

Hi

     

World

      GeeksforGeeks   Web Portal for Geeks
  • 指数。 PHP

PHP

open('data.xml');
 
// Enable the Parser Property
$XMLReader->setParserProperty(XMLReader::VALIDATE, true);
 
// Iterate through the XML nodes
while ($XMLReader->read()) {
    if ($XMLReader->nodeType == XMLREADER::ELEMENT) {
 
        // Check if XML is valid or not
        $isValid = $XMLReader->isValid();
        if ($isValid) {
            echo "YES ! this node is validated
";         }     } } ?>
  • 输出:
YES ! this node is validated
YES ! this node is validated
YES ! this node is validated
YES ! this node is validated
YES ! this node is validated

参考: https://www. PHP.net/manual/en/xmlreader.setparserproperty。 PHP