Home arrow PHP arrow Page 2 - Working with Attributes and CDATA Sections with the DOM XML Extension

Reviewing some methods of the DOM XML extension - PHP

Undeniably, one of the most remarkable strengths of PHP is its robust set of extensions. They provide developers with the right tools to build a huge variety of web applications with minor hassles. And this characteristic is particularly evident when it comes to working with XML documents, since PHP comes packaged with a bunch of powerful libraries that allow it to handle XML data in all sorts of clever ways.

TABLE OF CONTENTS:
  1. Working with Attributes and CDATA Sections with the DOM XML Extension
  2. Reviewing some methods of the DOM XML extension
  3. Working with the createAttribute() method
  4. Inserting CDATA nodes into an XML document
By: Alejandro Gervasio
Rating: starstarstarstarstar / 3
March 04, 2008

print this article
SEARCH DEV SHED

TOOLS YOU CAN USE

advertisement

Before I begin showing you how to use the DOM XML extension that comes packaged with PHP, first I will rehash the methods that were covered in the previous installment of the series, in case you weren’t able to read it.

In that specific tutorial, I introduced a few basic methods, such as “createElement()”and “appendChild(),” which were pretty useful for building and inserting new nodes into an existing XML document. I culminated the article by developing a complete practical example where all these methods, along with an additional one called “saveXML(),” were utilized to build a new XML document populated by using a basic PHP array. The source code corresponding to this example is listed below. Here it is:


$elements=array('element1'=>'Element 1','element2'=>'Element
2','element3'=>'Element 3','element4'=>'Element 4','element5'=>'Element
5','element6'=>'Element 6','element7'=>'Element 7','element8'=>'Element
8','element9'=>'Element 9','element10'=>'Element 10');

$dom=new DOMDocument('1.0','iso-8859-1');

$rootElement=$dom->createElement('rootnode','');

// insert the root element into the document

$dom->appendChild($rootElement);

// insert additional elements into the document

foreach($elements as $key=>$value){

$element=$dom->createElement($key,$value);

$rootElement->appendChild($element);

}

// tell the browser the output is XML via the 'Content-Type' HTTP header

header('Content-Type: text/xml');

// display DOM document

echo $dom->saveXML();


/* displays the following

<?xml version="1.0" encoding="iso-8859-1"?>

<rootnode>

<element1>Element 1</element1>

<element2>Element 2</element2>

<element3>Element 3</element3>

<element4>Element 4</element4>

<element5>Element 5</element5>

<element6>Element 6</element6>

<element7>Element 7</element7>

<element8>Element 8</element8>

<element9>Element 9</element9>

<element10>Element 10</element10>

</rootnode>

*/


As you can see, the above example speaks for itself, due to its extreme simplicity. In this case, a simple PHP array is used to create and append a few new nodes to an XML document via the pair of “createElement()” and “appendChild()” methods I mentioned above. Once those nodes are appended to the document tree, the whole structure is printed on screen through the “saveXML()” method. That wasn’t too difficult to grasp, was it?

With the previous example still fresh in your mind, I assume that using the DOM XML PHP extension to build a basic XML document from scratch and add new nodes to it is already a familiar process for you. This means that it's time to continue learning more useful methods that come integrated with this extension.

In the following section, I’m going to teach you how to add some custom attributes to the existing nodes of a recently-created XML document and how to insert CDATA sections into it. All of these topics will be treated in depth in the next few lines, so click on the link that appears below and keep reading.



 
 
>>> More PHP Articles          >>> More By Alejandro Gervasio
 

blog comments powered by Disqus
escort Bursa Bursa escort Antalya eskort
   

PHP ARTICLES

- Hackers Compromise PHP Sites to Launch Attac...
- Red Hat, Zend Form OpenShift PaaS Alliance
- PHP IDE News
- BCD, Zend Extend PHP Partnership
- PHP FAQ Highlight
- PHP Creator Didn't Set Out to Create a Langu...
- PHP Trends Revealed in Zend Study
- PHP: Best Methods for Running Scheduled Jobs
- PHP Array Functions: array_change_key_case
- PHP array_combine Function
- PHP array_chunk Function
- PHP Closures as View Helpers: Lazy-Loading F...
- Using PHP Closures as View Helpers
- PHP File and Operating System Program Execut...
- PHP: Effects of Wrapping Code in Class Const...

Developer Shed Affiliates

 


Dev Shed Tutorial Topics: