XMLReader::setParserProperty()函數是PHP中的一個內置函數,用於設置解析器選項。此函數可用於驗證文檔。
用法:
bool XMLReader::setParserProperty( int $property, bool $value )
參數:該函數接受上述和以下描述的兩個參數:
- $property:它指定一個與解析器選項常量之一相對應的整數,如下所示:
- XMLReader::LOADDTD(1)這將加載DTD,但不會驗證。
- XMLReader::DEFAULTATTRS(2)這將加載DTD和默認屬性,但不會驗證。
- XMLReader::VALIDATE(3)這將加載DTD並在解析時進行驗證。
- XMLReader::SUBST_ENTITIES(4)這將替代實體並擴展引用。
- $value:它指定是啟用還是禁用該屬性。
返回值:如果成功,此函數將返回TRUE,否則將返回FALSE。
以下示例說明了PHP中的XMLReader::setParserProperty()函數:
範例1:
- data.xml
<?xml version="1.0" encoding="utf-8"?> <div> <h1> Sample XML </h1> </div>
- index.php
<?php // Create a new XMLReader instance $XMLReader = new XMLReader(); // Open the XML file with sample XML $XMLReader->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.
程序2:
- data.xml
<?xml version="1.0"?> <!-- DTD rules to be followed by XML--> <!DOCTYPE html [ <!ELEMENT html (h1, p, heading, body)> <!ELEMENT h1 (#PCDATA)> <!ELEMENT p (#PCDATA)> <!ELEMENT heading (#PCDATA)> <!ELEMENT body (#PCDATA)> ]> <!-- XML starts from here --> <html> <h1>Hi</h1> <p>World</p> <heading>GeeksforGeeks</heading> <body>Web Portal for Geeks</body> </html>
- index.php
<?php // Create a new XMLReader instance $XMLReader = new XMLReader(); // Open the XML file $XMLReader->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<br>"; } } } ?>
- 輸出:
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
相關用法
- PHP XMLReader XML()用法及代碼示例
- PHP XMLReader close()用法及代碼示例
- PHP XMLReader getAttributeNs()用法及代碼示例
- PHP XMLReader open()用法及代碼示例
- PHP XMLReader getParserProperty()用法及代碼示例
- PHP XMLReader moveToFirstAttribute()用法及代碼示例
- PHP XMLReader moveToNextAttribute()用法及代碼示例
- PHP XMLReader readInnerXml()用法及代碼示例
- PHP XMLReader readOuterXml()用法及代碼示例
- PHP XMLReader readString()用法及代碼示例
- PHP XMLReader setRelaxNGSchema()用法及代碼示例
- PHP XMLReader setRelaxNGSchemaSource()用法及代碼示例
- PHP XMLReader setSchema()用法及代碼示例
注:本文由純淨天空篩選整理自gurrrung大神的英文原創作品 PHP | XMLReader setParserProperty() Function。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。