als u gebruikt zal deze code onder u begrijpen wat ik bedoel. deze code loste mijn probleem op.
[code]
/**
* De Klasse van de Generator XMLToArray
* @author: DOCTORANDUS IN DE LETTEREN Razzaque Rupom
,
* Moderator, phpResource (LINK1 http://groups.yahoo.com/group/phpresource/LINK1)
* URL: LINK2 http://www.rupom.infoLINK2
* @version: 1.0
* @date 06/05/2006
* Doel: Het creëren van Hiërarchische Serie van Xml- Gegevens
* Bevrijd: Onder GPL
*/
klasse XmlToArray
{
var $xml= '';
/**
* StandaardAannemer
* @param $xml = xml gegevens
* @return niets
*/
functie XmlToArray ($xml)
{
$this->xml = $xml;
}
/**
* _struct_to_array ($values, &$i)
*
* Dit is toevoegt de inhoud van de terugkeer xml in de serie voor gemakkelijkere verwerking.
* Recursief, Statisch
*
* @access privé
* @param is de serie $values dit het xmlgegeven in een serie
* @param is int. $i dit de huidige plaats in de serie
* @return Serie
*/
_struct_to_array functie ($values, &$i)
{
$child = serie ();
als (isset ($values [$i] [„waarde“])) array_push ($child, $values [$i] [„waarde“]);
terwijl ($i++ <� count=""> schakelaar ($values [$i] [„type“]) {
geval „cdata“:
array_push ($child, $values [$i] [„waarde“]);
onderbreking;
„volledig“ geval:
$name = $values [$i] [„markering“];
als (! leeg ($name)){
$child [$name] = ($values [$i] [„waarde“])? ($values [$i] [„waarde“]): '';
als (isset ($values [$i] [„attributen“])) {
$child [$name] = $values [$i] [„attributen“];
}
}
onderbreking;
„open“ geval:
$name = $values [$i] [„markering“];
$size = isset ($child [$name])? sizeof ($child [$name]): 0;
$child [$name] [$size] = $this->_struct_to_array ($values, $i);
onderbreking;
„dicht“ geval:
terugkeer $child;
onderbreking;
}
}
terugkeer $child;
} //_struct_to_array
/**
* createArray ($data)
*
* Dit is toevoegt de inhoud van de terugkeer xml in de serie voor gemakkelijkere verwerking.
*
* @access publiek
* @param is het koord $data dit het koord van de xmlgegevens
* @return Serie
*/
createArray functie ()
{
$xml = $this->xml;
$values = serie ();
$index = serie ();
$array = serie ();
$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] [„markering“];
$array [$name] = isset ($values [$i] [„attributen“])? $values [$i] [„attributen“]: '';
$array [$name] = $this->_struct_to_array ($values, $i);
terugkeer $array;
} //createArray
} //XmlToArray
? >
$xml_data = file_get_contents („XMLFormatPerformanceReport.xml“);
//Creating Instantie van de Klasse
$xmlObj = nieuwe XmlToArray ($xml_data);
//Creating Serie
$arrayData = $xmlObj->createArray ();
//Displaying de Serie
echo „„;
print_r ($arrayData);
? >
[/code]