Pagina de start a forumului Forum PHP Romania - Discutii despre PHP, MySQL, Javascript, AJAX, etc Forum PHP Romania - Discutii despre PHP, MySQL, Javascript, AJAX, etc
Comunitatea PHP Romania
 

XML parsing
Vezi mesajul original

 
       Pagina de start a forumului Forum PHP Romania - Discutii despre PHP, MySQL, Javascript, AJAX, etc -> PHP Avansat
Subiectul anterior :: Subiectul următor  
Autor Mesaj
UnTip



Data înscrierii: 03/Mai/2007
Mesaje: 367

Trimis: Vin Oct 12, 2007 11:56 am    Titlul subiectului: XML parsing  

am un xml de forma
<?xml version="1.0" encoding="UTF-8" standalone="no" ?>
- <pac>
- <pac_row>
<nume>STOICAN</nume>
<prenume>MIHAELA</prenume>
<nastere>1975-01-20 00:00:00</nastere>
<cnp>2750120384193</cnp>
<adresa_det>OCT. GOGA 108</adresa_det>
</pac_row>
- <pac_row>
<nume>MINCU</nume>
<prenume>ADINA</prenume>
<nastere>1979-06-28 00:00:00</nastere>
<cnp>2790628421570</cnp>
<adresa_det>Radovanu nr 7, bl 42 ap 30</adresa_det>
</pac_row>
- <pac_row>
<nume>GHENCEA</nume>
<prenume>LAVINIA</prenume>
<nastere>1977-10-16 00:00:00</nastere>
<cnp>2771016433020</cnp>
<adresa_det>BADENI NR 7 BL M 61 AP 40</adresa_det>
</pac_row>
- <pac_row>
........................................etc............................................................



as dori sa parsez acest XML sa aflu daca niste $_POST-uri, cum ar fi... nume, prenume si data nasterii sau CNP se afla in XML-ul asta....


niste indicii de start ?
Sus  
Cosmin Chiru



Data înscrierii: 19/Apr/2007
Mesaje: 213

Trimis: Vin Oct 12, 2007 11:58 am    Titlul subiectului:  

Pe aici te-ai uitat?
Sus  
UnTip



Data înscrierii: 03/Mai/2007
Mesaje: 367

Trimis: Vin Oct 12, 2007 12:16 pm    Titlul subiectului:  

m-am uitat.. nu m-a ajutat foarte mult
Sus  
Copyright



Data înscrierii: 17/Dec/2006
Mesaje: 853
Locație: Bucuresti

Trimis: Vin Oct 12, 2007 12:43 pm    Titlul subiectului:  

http://www.php.net/manual/en/ref.domxml.php
http://www.php.net/manual/en/function.domnode-node-value.php










Later.
Sus  
UnTip



Data înscrierii: 03/Mai/2007
Mesaje: 367

Trimis: Vin Oct 12, 2007 3:05 pm    Titlul subiectului:  

Multumesc copyright, chiar mi=a fost de ajutor... postez functia pentru ceilalti interesati
<?php
function dom_to_simple_array($domnode, &$array) {
$array_ptr = &$array;
$domnode = $domnode->firstChild;
while (!is_null($domnode)) {
if (! (trim($domnode->nodeValue) == "") ) {
switch ($domnode->nodeType) {
case XML_TEXT_NODE: {
$array_ptr['cdata'] = $domnode->nodeValue;
break;
}
case XML_ELEMENT_NODE: {
$array_ptr = &$array[$domnode->nodeName][];
if ($domnode->hasAttributes() ) {
$attributes = $domnode->attributes;
if (!is_array ($attributes)) {
break;
}
foreach ($attributes as $index => $domobj) {
$array_ptr[$index] = $array_ptr[$domobj->name] = $domobj->value;
}
}
break;
}
}
if ( $domnode->hasChildNodes() ) {
dom_to_simple_array($domnode, $array_ptr);
}
}
$domnode = $domnode->nextSibling;
}
}

$file="pac.xml";
$strXMLData=file_get_contents($file);
$domdoc = new DOMDocument;
$domdoc->loadXML($strXMLData);
$aData = array();

// manipulare xml
dom_to_simple_array($domdoc, $aData);
$ncount= count($aData['pac'][0]['pac_row']) ;
# echo $ncount;


$numele = $aData['pac'][0]['pac_row'][$i]['nume'][0]['cdata'];
$prenumele = $aData['pac'][0]['pac_row'][$i]['prenume'][0]['cdata'];
//echo $numele." ".$prenumele."<br>";
?>
unde pac este root-ul XML-ului urmat de elemente...
Sus  
PHPRomania Bot
Bot Member


Data înscrierii: 27/Dec/2007
Mesaje: 1
Locaţie: Server Google
Trimis: Mie Dec 26, 2007 7:01 pm   Titlul subiectului: Ad  

Sus  
 
       Pagina de start a forumului Forum PHP Romania - Discutii despre PHP, MySQL, Javascript, AJAX, etc -> PHP Avansat
Pagina 1 din 1


Powered by phpBB 2.0.22 © 2001, 2002 phpBB Group
Varianta în limba română: Romanian phpBB online community