PHP XML DOM

PHP XML DOM


The PHP DOM library allows you to manage HTML and XML after you upload your script into a new PHP DOMDocument. Parsing is an important concept referring to changing source code into a more easy-to-read format.

For reading and changing HTML and XML, DOM library is the best option as it is automatically built together with some PHP versions.

The built-in DOM parser makes it possible to process XML documents in PHP.

Look at the following XML document fraction:

The DOM sees the XML above as a tree structure:

  • Level 1: XML Document
  • Level 2: Root element: <from>
  • Level 3: Text element: "Jani"

The DOM parser functions are part of the PHP core. There is no installation needed to use these functions.

The XML File

The XML file below ("note.xml") will be used in our example:

Load and Output XML

We want to initialize the XML parser, load the xml, and output it:

The output of the code above will be:

If you select "View source" in the browser window, you will see the following HTML:

The example above creates a DOMDocument-Object and loads the XML from "note.xml" into it.
Then the saveXML() function puts the internal XML document into a string, so we can output it.
 
Looping through XML
We want to initialize the XML parser, load the XML, and loop through all elements of the <note> element:

The output of the code above will be:

In the example above you see that there are empty text nodes between each element.

When XML generates, it often contains white-spaces between the nodes. The XML DOM parser treats these as ordinary elements, and if you are not aware of them, they sometimes cause problems.