Hallo,
ich parse eine XML Datei mit SimpleXML. Ich bin dabei erstmal alle Kategorien auszulesen, die verschachtelt (also mehrere Ebenen haben) können.
ich lese die xml-datei erstmal so (bin noch am anfang und mach erstmal nur testausgaben) :
	
die Funktion getCategories ist deshalb eine Funktion, weil ich sie rekursiv aufrufen will, falls die kategorie eine unterkategorie hat.
	
hat eine Kategorie eine Unterkategorie dann trifft die Anweisung auch zu 
	
		
in dem print_r bekomm ich dann die Struktur ausgegeben, wo er mir sagt das der Schlüssel "Category" ein array ist.
	Wenn ich dann aber mit is_array prüfe ob [Category] ein Array ist, sagt mir NEIN! Wieso, ist doch zu erkennen des es ein Array ist?
Weiß jemand eine Antwort?
Hab noch nicht viel mit Objekten gearbeit. vielleicht versteh ich hier was falsch!
Danke
					ich parse eine XML Datei mit SimpleXML. Ich bin dabei erstmal alle Kategorien auszulesen, die verschachtelt (also mehrere Ebenen haben) können.
ich lese die xml-datei erstmal so (bin noch am anfang und mach erstmal nur testausgaben) :
PHP-Code:
	
	
    $filename = 'forum.xml';
    if (file_exists($filename)):
        $xml = simplexml_load_file($filename);
        foreach ($xml as $categories):
            getCategories($categories,'-');
        endforeach;
    else:
        exit('Datei nicht gefunden.');
    endif; 
PHP-Code:
	
	
    // p ist nur ein string um die ebenen zu verdeutlichen
    function getCategories($categories,$p) {
        echo $p.'> '.$categories['Name'];
        echo '<br />';
        if (array_key_exists('Category',$categories))
             //getCategories($categories['Category'],$p.'-');
             print_r($categories);
    } 
			
			
				if (array_key_exists('Category',$categories))
			
		
	Code:
	
	-> Alles für die Frau
SimpleXMLElement Object
(
    [@attributes] => Array
        (
            [Id] => 170813807
            [Name] => Alles für die Frau
        )
    [Category] => Array
        (
            [0] => SimpleXMLElement Object
                (
                    [@attributes] => Array
                        (
                            [Id] => 170813868
                            [Name] => Frauenhygiene
                        )
                )
...
Weiß jemand eine Antwort?
Hab noch nicht viel mit Objekten gearbeit. vielleicht versteh ich hier was falsch!
Danke
 
          
Kommentar