note 90671 added to domdocument.getelementbyid
| From: | gurmukh24 at gmail dot com | Date: | Mon, 04 May 2009 04:40:59 +0000 |
| Subject: | note 90671 added to domdocument.getelementbyid | ||
| Groups: | php.notes | ||
| Request: | Send a blank email to php-notes+get-154172@lists.php.net to get a copy of this message | ||
See example how multiple attributes and childs are parsed using php in a perfect way. coder :
gurmukh singh Bhatti
<?php
$xml =<<<EOT
<?xml version="1.0"?>
<root>
<section name="Section1">
<category id="Category1" name="google">
<arti name="article1">
<p>any html code here</p>
<b>my name is so so</b>
</arti>
<arti name="article2">value2</arti>
<arti name="article3">value3</arti>
<arti name="article4">value4</arti>
</category>
<category id="Category2" name="yahoo">
<arti name="articleSection2">Test value</arti>
</category>
</section>
<section name="Section2">
<category id="category1_of_section2" name="msn">
<arti name="article2">value1</arti>
<arti name="article3">value2</arti>
</category>
<category id="Category2_of_section2" name="webcare">
<arti name="param3">value4</arti>
</category>
</section>
</root>
EOT;
$dom = new DomDocument;
$dom->preserveWhiteSpace = FALSE;
$dom->loadXML($xml);
$params = $dom->getElementsByTagName('section'); // Find Sections
$k=0;
foreach ($params as $param) //go to each section 1 by 1
{
echo "Section Attribute :->
".$params->item($k)->getAttribute('name')."<br>"; //get
section attribute
$params2 = $params->item($k)->getElementsByTagName('category'); //digg
categories with in Section
$i=0; // values is used to iterate categories
foreach ($params2 as $p) {
echo " - Category Attribute Name :->
".$params2->item($i)->getAttribute('name')."<br>"; //get
Category attributes
$params3 = $params2->item($i)->getElementsByTagName('arti'); //dig Arti
into Categories
$j=0;//values used to interate Arti
foreach ($params3 as $p2)
{
echo " - Article Attribute Name :
".$params3->item($j)->getAttribute('name').""; //get arti atributes
echo " Value :
".$params3->item($j)->nodeValue."<br>"; //get Node value ;
$j++;
}
$i++;
}
$k++;
}
?>
output :
Section Attribute :-> Section1
- Category Attribute Name :-> google
- Article Attribute Name : article1 Value : any html code heremy name is so so
- Article Attribute Name : article2 Value : value2
- Article Attribute Name : article3 Value : value3
- Article Attribute Name : article4 Value : value4
- Category Attribute Name :-> yahoo
- Article Attribute Name : articleSection2 Value : Test value
Section Attribute :-> Section2
- Category Attribute Name :-> msn
- Article Attribute Name : article2 Value : value1
- Article Attribute Name : article3 Value : value2
- Category Attribute Name :-> webcare
- Article Attribute Name : param3 Value : value4
----
Server IP: 79.132.192.3
Probable Submitter: 220.227.147.122 (proxied: 101.168.1.105)
----
Manual Page -- http://www.php.net/manual/en/domdocument.getelementbyid.php
Edit -- https://master.php.net/note/edit/90671
Del: integrated -- https://master.php.net/note/delete/90671/integrated
Del: useless -- https://master.php.net/note/delete/90671/useless
Del: bad code -- https://master.php.net/note/delete/90671/bad+code
Del: spam -- https://master.php.net/note/delete/90671/spam
Del: non-english -- https://master.php.net/note/delete/90671/non-english
Del: in docs -- https://master.php.net/note/delete/90671/in+docs
Del: other reasons-- https://master.php.net/note/delete/90671
Reject -- https://master.php.net/note/reject/90671
Search -- https://master.php.net/manage/user-notes.php