se usate questo codice sotto voi capirà che cosa significo. questo codice ha risolto il mio problema.
[codice]
/**
* Codice categoria del generatore di XMLToArray
* @author: MA Razzaque Rupom
,
* Moderatore, phpResource (LINK1 http://groups.yahoo.com/group/phpresource/LINK1)
* URL: LINK2 http://www.rupom.infoLINK2
* @version: 1.0
* @date 06/05/2006
* Scopo: Generazione dell'allineamento gerarchico dai dati di XML
* Liberato: Nell'ambito di GPL
*/
codice categoria XmlToArray
{
varietà $xml= '';
/**
* Costruttore di difetto
* @param $xml = dati del xml
* @return nessun
*/
funzione XmlToArray ($xml)
{
$this->xml = $xml;
}
/**
* _struct_to_array ($values, &$i)
*
* Ciò è aggiunge il contenuto del xml di ritorno nell'allineamento per l'elaborazione più facile.
* Ricorsivo, statico
*
* @access riservati
* l'allineamento $values del @param questo è i dati del xml in un allineamento
* il @param il int $i questo è la posizione corrente nell'allineamento
* allineamento del @return
*/
funzione _struct_to_array ($values, &$i)
{
$child = allineamento ();
se (isset ($values [$i] [“valore„])) array_push ($child, $values [$i] [“valore„]);
mentre (interruttore <� count=""> di $i++ ($values [$i] [“tipo„]) {
caso “cdata„:
array_push ($child, $values [$i] [“valore„]);
rottura;
il caso “completa„:
$name = $values [$i] [“modifica„];
se (! svuotare ($name)){
$child [$name] = ($values [$i] [“valore„])? ($values [$i] [“valore„]): '';
se (isset ($values [$i] [“attributi„])) {
$child [$name] = $values [$i] [“attributi„];
}
}
rottura;
il caso “si apre„:
$name = $values [$i] [“modifica„];
$size = isset ($child [$name])? sizeof ($child [$name]): 0;
$child [$name] [$size] = $this->_struct_to_array ($values, $i);
rottura;
caso “vicino„:
$child di ritorno;
rottura;
}
}
$child di ritorno;
} //_struct_to_array
/**
* createArray ($data)
*
* Ciò è aggiunge il contenuto del xml di ritorno nell'allineamento per l'elaborazione più facile.
*
* @access pubblici
* la stringa $data del @param questo è la serie dei dati del xml
* allineamento del @return
*/
funzione createArray ()
{
$xml = $this->xml;
$values = allineamento ();
$index = allineamento ();
$array = allineamento ();
$parser = xml_parser_create ();
xml_parser_set_option ($parser, XML_OPTION_SKIP_WHITE, 1);
xml_parser_set_option ($parser, XML_OPTION_CASE_FOLDING, 0);
xml_parse_into_struct ($parser, $xml, $values, $index);
xml_parser_free ($parser);
$i = 0;
$name = $values [$i] [“modifica„];
$array [$name] = isset ($values [$i] [“attributi„])? $values [$i] [“attributi„]: '';
$array [$name] = $this->_struct_to_array ($values, $i);
$array di ritorno;
} //createArray
} //XmlToArray
? >
$xml_data = file_get_contents (“XMLFormatPerformanceReport.xml„);
Caso di //Creating del codice categoria
$xmlObj = nuovo XmlToArray ($xml_data);
Allineamento di //Creating
$arrayData = $xmlObj->createArray ();
//Displaying l'allineamento
eco ““;
print_r ($arrayData);
? >
[/code]