Javascript debugger
Website design
↑
The XMLReader extension is an XML Pull parser. The reader acts as a cursor going forward on the document stream and stopping at each node on the way.
It is important to note that internally, libxml uses the UTF-8 encoding and as such, the encoding of the retrieved contents will always be in UTF-8 encoding.
The XMLReader extension is available in PECL as of PHP 5.0.0 and is
included and enabled as of PHP 5.1.0 by default. It can be enabled
by adding the argument --enable-xmlreader
(or --with-xmlreader
before 5.1.0)
to your configure line. The libxml
extension is required.
XMLReader::close - Close the XMLReader input
XMLReader::expand - Export current node to a DOM node
XMLReader::getAttribute - Get value of attribute by name
XMLReader::getAttributeNo - Get value of attribute by position
XMLReader::getAttributeNs - Get value of attribute by name and URI
XMLReader::getParserProperty - Indicates if parser property is set or not
XMLReader::isValid - Indicates if document is valid
XMLReader::lookupNamespace - Get URI for prefix in scope of node
XMLReader::moveToAttribute - Positions reader on named attribute
XMLReader::moveToAttributeNo - Positions reader on attribute by index
XMLReader::moveToAttributeNs - Position reader on attribute by name and URI
XMLReader::moveToElement - Move to parent element of current attribute node
XMLReader::moveToFirstAttribute - Move to first attribute of node
XMLReader::moveToNextAttribute - Move to next attribute of node
XMLReader::next - Move to next element skipping children
XMLReader::open - Set URI to be parsed
XMLReader::read - Move to next node in stream
XMLReader::setParserProperty - Set parser property
XMLReader::setRelaxNGSchema - Set URI of RelaxNG schema to validate against
XMLReader::setRelaxNGSchemaSource - Set string containing RelaxNG schema to validate against
XMLReader::XML - Set string of data to be parsed
Name | Type | Read-only | Description |
---|---|---|---|
attributeCount | int | yes | The number of attributes on the node |
baseURI | string | yes | The base URI of the node |
depth | int | yes | Depth of the node in the tree starting at 0 |
hasAttributes | bool | yes | Indicates if node has attributes |
hasValue | bool | yes | Indicates if node has a text value |
isDefault | bool | yes | Indicates if attribute is defaulted from DTD |
isEmptyElement | bool | yes | Indicates if node is an empty element tag |
localName | string | yes | The local name of the node |
name | string | yes | The qualified name of the node |
namespaceURI | string | yes | The URI of the namespace associated with the node |
nodeType | int | yes | The node type for the node |
prefix | string | yes | The prefix of the namespace associated with the node |
value | string | yes | The text value of the node |
xmlLang | string | yes | The xml:lang scope which the node resides |
The constants below are defined by this extension, and will only be available when the extension has either been compiled into PHP or dynamically loaded at runtime.
XMLReader uses class constants since PHP 5.1. Prior releases use global
constants in the form XMLREADER_ELEMENT
.
Constant | Value | Description |
---|---|---|
XMLReader::NONE
(integer)
| 0 | No node type |
XMLReader::ELEMENT
(integer)
| 1 | Start element |
XMLReader::ATTRIBUTE
(integer)
| 2 | Attribute node |
XMLReader::TEXT
(integer)
| 3 | Text node |
XMLReader::CDATA
(integer)
| 4 | CDATA node |
XMLReader::ENTITY_REF
(integer)
| 5 | Entity Reference node |
XMLReader::ENTITY
(integer)
| 6 | Entity Declaration node |
XMLReader::PI
(integer)
| 7 | Processing Instruction node |
XMLReader::COMMENT
(integer)
| 8 | Comment node |
XMLReader::DOC
(integer)
| 9 | Document node |
XMLReader::DOC_TYPE
(integer)
| 10 | Document Type node |
XMLReader::DOC_FRAGMENT
(integer)
| 11 | Document Fragment node |
XMLReader::NOTATION
(integer)
| 12 | Notation node |
XMLReader::WHITESPACE
(integer)
| 13 | Whitespace node |
XMLReader::SIGNIFICANT_WHITESPACE
(integer)
| 14 | Significant Whitespace node |
XMLReader::END_ELEMENT
(integer)
| 15 | End Element |
XMLReader::END_ENTITY
(integer)
| 16 | End Entity |
XMLReader::XML_DECLARATION
(integer)
| 17 | XML Declaration node |
Constant | Value | Description |
---|---|---|
XMLReader::LOADDTD
(integer)
| 1 | Load DTD but do not validate |
XMLReader::DEFAULTATTRS
(integer)
| 2 | Load DTD and default attributes but do not validate |
XMLReader::VALIDATE
(integer)
| 3 | Load DTD and validate while parsing |
XMLReader::SUBST_ENTITIES
(integer)
| 4 | Substitute entities and expand references |
Table of Contents