Die Funktion xml_parse_into_struct() analysiert XML-Daten in ein Array.
Diese Funktion analysiert XML-Daten in zwei Arrays:
Wertearray – enthält Daten aus dem analysierten XML
Index-Array – Enthält Zeiger auf die Positionen von Werten im Werte-Array
Bei Erfolg gibt die Funktion 1 zurück. Wenn dies fehlschlägt, wird 0 zurückgegeben.
xml_parse_into_struct(parser,xml,value_arr,index_arr)
Parameter | beschreiben |
---|---|
Parser | Erforderlich. Gibt den zu verwendenden XML-Parser an. |
xml | Erforderlich. Gibt die zu analysierenden XML-Daten an. |
value_arr | Erforderlich. Gibt das Zielarray für XML-Daten an. |
index_arr | Optional. Gibt das Zielarray der Indexdaten an. |
Hinweis: Die Funktion xml_parse_into_struct() gibt 1 zurück, wenn sie erfolgreich ist, und 0, wenn sie fehlschlägt. Dies unterscheidet sich von TRUE und FALSE. Seien Sie also vorsichtig, wenn Sie beispielsweise den Operator === verwenden.
XML-Datei
<?xml version="1.0" binding="ISO-8859-1"?><note><to>Tove</to><from>Jani</from><heading>Reminder</heading><body>Don Vergiss mich dieses Wochenende nicht!</body></note>
PHP-Code
<?php//ungültige XML-Datei$xmlfile = 'test.xml';$xmlparser = xml_parser_create();// öffne eine Datei und lese Daten$fp = fopen($xmlfile, 'r');$xmldata = fread( $fp, 4096);xml_parse_into_struct($xmlparser,$xmldata,$values);xml_parser_free($xmlparser);print_r($values);?>
Die Ausgabe des obigen Codes sieht folgendermaßen aus:
Array([0] => Array ( [tag] => NOTE [type] => open [level] => 1 [value] => )[1] => Array ( [tag] => TO [type] = > komplett [Ebene] => 2 [Wert] => Tove )[2] => Array ( [Tag] => HINWEIS [Wert] => [Typ] => cdata [Ebene] => 1 ) [3] = > Array ([Tag] => FROM [Typ] => vollständig [Ebene] => 2 [Wert] => Jani )[4] => Array ( [Tag] => HINWEIS [Wert] => [Typ] => cdata [Ebene] = > 1 ) [5] => Array ( [tag] => HEADING [type] => Complete [level] => 2 [value] => Reminder )[6] => Array ( [tag] => NOTE [value ] => [Typ] => cdata [level] => 1 ) [7] => Array ( [tag] => BODY [type] => Complete [level] => 2 [value] => Vergiss mich dieses Wochenende nicht! )[ 8] => Array ( [tag] => NOTE [value] => [type] => cdata [level] => 1 )[9] => Array ( [tag] => NOTE [type] => close [ Ebene] => 1 ))