The XMLReader class

(PHP 5 >= 5.1.0, PHP 7, PHP 8)

简介

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.

类摘要

class XMLReader {
/* 常量 */
public const int NONE;
public const int ELEMENT;
public const int ATTRIBUTE;
public const int TEXT;
public const int CDATA;
public const int ENTITY_REF;
public const int ENTITY;
public const int PI;
public const int COMMENT;
public const int DOC;
public const int DOC_TYPE;
public const int DOC_FRAGMENT;
public const int NOTATION;
public const int WHITESPACE;
public const int END_ELEMENT;
public const int END_ENTITY;
public const int XML_DECLARATION;
public const int LOADDTD;
public const int DEFAULTATTRS;
public const int VALIDATE;
public const int SUBST_ENTITIES;
/* 属性 */
public int $depth;
public bool $hasValue;
public string $name;
public int $nodeType;
public string $prefix;
public string $value;
/* 方法 */
public function close(): true
public function expand(?DOMNode $baseNode = null): DOMNode|false
public static function fromStream(
    resource $stream,
    ?string $encoding = null,
    int $flags = 0,
    ?string $documentUri = null
): static
public static function fromString(string $source, ?string $encoding = null, int $flags = 0): static
public static function fromUri(string $uri, ?string $encoding = null, int $flags = 0): static
public function getAttribute(string $name): ?string
public function getAttributeNo(int $index): ?string
public function getAttributeNs(string $name, string $namespace): ?string
public function getParserProperty(int $property): bool
public function isValid(): bool
public function lookupNamespace(string $prefix): ?string
public function moveToAttribute(string $name): bool
public function moveToAttributeNo(int $index): bool
public function moveToAttributeNs(string $name, string $namespace): bool
public function moveToElement(): bool
public function moveToFirstAttribute(): bool
public function moveToNextAttribute(): bool
public function next(?string $name = null): bool
public static function open(string $uri, ?string $encoding = null, int $flags = 0): XMLReader
public function open(string $uri, ?string $encoding = null, int $flags = 0): bool
public function read(): bool
public function readInnerXml(): string
public function readOuterXml(): string
public function readString(): string
public function setParserProperty(int $property, bool $value): bool
public function setRelaxNGSchema(?string $filename): bool
public function setRelaxNGSchemaSource(?string $source): bool
public function setSchema(?string $filename): bool
public static function XML(string $source, ?string $encoding = null, int $flags = 0): XMLReader
public function XML(string $source, ?string $encoding = null, int $flags = 0): bool
}

属性

attributeCount

The number of attributes on the node

baseURI

The base URI of the node

depth

Depth of the node in the tree, starting at 0

hasAttributes

Indicates if node has attributes

hasValue

Indicates if node has a text value

isDefault

Indicates if attribute is defaulted from DTD

isEmptyElement

Indicates if node is an empty element tag

localName

The local name of the node

name

The qualified name of the node

namespaceURI

The URI of the namespace associated with the node

nodeType

The node type for the node

prefix

The prefix of the namespace associated with the node

value

The text value of the node

xmlLang

The xml:lang scope which the node resides

预定义常量

XMLReader Node Types

XMLReader::NONE

No node type

XMLReader::ELEMENT

Start element

XMLReader::ATTRIBUTE

Attribute node

XMLReader::TEXT

Text node

XMLReader::CDATA

CDATA node

XMLReader::ENTITY_REF

Entity Reference node

XMLReader::ENTITY

Entity Declaration node

XMLReader::PI

Processing Instruction node

XMLReader::COMMENT

Comment node

XMLReader::DOC

Document node

XMLReader::DOC_TYPE

Document Type node

XMLReader::DOC_FRAGMENT

Document Fragment node

XMLReader::NOTATION

Notation node

XMLReader::WHITESPACE

Whitespace node

XMLReader::SIGNIFICANT_WHITESPACE

Significant Whitespace node

XMLReader::END_ELEMENT

End Element

XMLReader::END_ENTITY

End Entity

XMLReader::XML_DECLARATION

XML Declaration node

XMLReader Parser Options

XMLReader::LOADDTD

Load DTD but do not validate

XMLReader::DEFAULTATTRS

Load DTD and default attributes but do not validate

XMLReader::VALIDATE

Load DTD and validate while parsing

XMLReader::SUBST_ENTITIES

Substitute entities and expand references

更新日志

版本 说明
8.4.0 The class constants are now typed.

目录