This documentation ist not finished yet. Don't start to translate it or use it as a programming reference (steinm@php.net).
These functions are only available if PHP was configured with --with-dom=[DIR], using the GNOME xml library. You will need at least libxml-2.2.7 These functions have been added in PHP 4.
The extension allows to operate on an XML document with the DOM api. It also provides a function xmltree() to turn the complete XML document into a tree of php objects. Currently this tree is read only, which doesn't mean you cannot modify it, but it would not make any sense since dumpmem() cannot be applied to it. Therefore, if you want to read an XML file and write a modified version use the add_node(), set_attribute(), etc. and finaly dumpmem() functions.
This module defines the following constants:
Table 1. XML constants
Constant | Value | Description |
---|---|---|
XML_ELEMENT_NODE | 1 | Node is an element |
XML_ATTRIBUTE_NODE | 2 | Node is an attribute |
XML_TEXT_NODE | 3 | Node is a piece of text |
XML_CDATA_SECTION_NODE | 4 | |
XML_ENTITY_REF_NODE | 5 | |
XML_ENTITY_NODE | 6 | Node is an entity like |
XML_PI_NODE | 7 | Node is a processing instruction |
XML_COMMENT_NODE | 8 | Node is a comment |
XML_DOCUMENT_NODE | 9 | Node is a document |
XML_DOCUMENT_TYPE_NODE | 10 | |
XML_DOCUMENT_FRAG_NODE | 11 | |
XML_NOTATION_NODE | 12 | |
XML_GLOBAL_NAMESPACE | 1 | |
XML_LOCAL_NAMESPACE | 2 |
Each function in this extension can be used in two ways. In a none object oriented way by passing the object to apply the function to as a first argument or in an object oriented way by calling the function as a method of an object. This documentation describes the none object oriented functions, though you get the object methods by skipping the prefix "domxml_". The following table will list all classes, its attributes and methods.
This module defines a number of classes, which are listed — including their properties and method — in the following table.
Table 2. DomDocument class (methods)
Method name | Function name | Description |
---|---|---|
root | domxml_root() | |
children | domxml_children() | |
add_root | domxml_add_root() | |
dtd | domxml_intdtd() | |
dumpmem | domxml() | |
xpath_init | xpath_init | |
xpath_new_context | xpath_new_context | |
xptr_new_context | xptr_new_context |
Table 3. DomDocument class (attributes)
Name | Type | Description |
---|---|---|
doc | class DomDocument | The object itself |
name | string | |
url | string | |
version | string | Version of XML |
encoding | string | |
standalone | long | 1 if the file is a standalone version |
type | long | One of the constants in table ... |
compression | long | 1 if the file is compressed |
charset | long |
Table 4. DomNode class (methods)
Name | PHP name | Description |
---|---|---|
lastchild | domxml_last_child() | |
children | domxml_children() | |
parent | domxml_parent() | |
new_child | domxml_new_child() | |
get_attribute | domxml_get_attribute() | |
set_attribute | domxml_set_attribute() | |
attributes | domxml_attributes() | |
node | domxml_node() | |
set_content() | domxml_set_content |