Login   Register  
PHP Classes
elePHPant
Icontem

File: demo.php

Recommend this page to a friend!
Stumble It! Stumble It! Bookmark in del.icio.us Bookmark in del.icio.us
  Classes of Mike Neugebauer  >  XML Node  >  demo.php  >  Download  
File: demo.php
Role: Example script
Content type: text/plain
Description: XHTML document generation demo
Class: XML Node
Generate XML documents on the fly
Author: By
Last change:
Date: 2004-05-16 09:17
Size: 2,422 bytes
 

Contents

Class file image Download
<?php

// Author: Mike Neugebauer 

// Class which builds XML nodes 
include_once( "XmlNode.php" );


 
// This is a fairly crude example which demonstrates how XmlNode can
 // be used to build and display XHTML data.
 
 // It might take a little getting used to, but it's better that trying
 // to remember to put all the closing tags in the right place.
      
    
 // Begin building an XHTML document.

 
$doc = new XmlNode"html"EMPTY_CDATANO_ATTRSnullfalse ); 
 
$head = new XmlNode"head"EMPTY_CDATANO_ATTRS$doc );
 
$curr = new XmlNode"title""Welcome to the XmlNode Demo"NO_ATTRS$head );
 
$body = new XmlNode"body"EMPTY_CDATA, array( "bgcolor"=>"#cccccc" ), $doc ); 
 
$div = new XmlNode"div"EMPTY_CDATA, array( "align"=>"center" ), $body );
 
$curr = new CdataNode"A bunch"$div );
 
$img = new XmlNode"hr"EMPTY_CDATA, array( "noshade"=>"noshade" ), $div  );
 
$para = new XmlNode"p"EMPTY_CDATA, array( "align"=>"left" ), $divtrue );
 
$curr = new CdataNode"of "$para );
 
$curr = new XmlNode"b""stuff "NO_ATTRS$para );
 
$curr = new XmlNode"i""thrown into "NO_ATTRS$div ); 
 
$curr = new CdataNode"a Div."$div );
 
 
// You can also add child/children using the addChild() and addChildren() methods
 
$simple_br = new XmlNode"br",  EMPTY_CDATA  ); 
 
$body->addChild$simple_br );
 
$body->addChildren ( array( $simple_br$simple_br ) );
 
 
// Each child is sent a reference to its parent. 
 
$table = new XmlNode"table"EMPTY_CDATA, array( "border"=>"2""align"=>"center""width"=>480 ), $body );
 
$curr_row = new XmlNode"tr"EMPTY_CDATA, array( "align"=>"left" ), $table );
 
$curr_cell = new XmlNode"td""piece 1", array( "bgcolor"=>"#666666" ), $curr_row );
 
$curr_cell = new XmlNode"td""piece 2", array( "bgcolor"=>"#00ff00" ), $curr_row );
 
$curr_row = new XmlNode"tr"EMPTY_CDATA, array( "align"=>"right" ), $table );
 
$curr_cell = new XmlNode"td""piece 3", array( "bgcolor"=>"#ff0000" ), $curr_row );
 
$curr_cell = new XmlNode"td""piece 4", array( "bgcolor"=>"#0000ff" ), $curr_row );
     
 
// write XHTML document
 
echo ( $doc->getXhtml() );

 
// Uncomment the line below to write the XHTML document to a file 
 // $doc->writeToFile( "/tmp/testnode.html" );
 
 // Convert XHTML to SimpleXML, run an XPath query 
 
$xml_obj $doc->toSimpleXml();
 
$get $xml_obj->xpath"/html/head/title" );
 echo 
"Grab Title: " $get[0]; 
     
?>