Guten Tag,
folgendes XML-Dokument:
parse ich mit Hilfe von SimpleXML
Das kommt dabei heraus wenn ich mir das Array $dvds mit print_r ausgeben lasse
Und genau da liegt das Problem. Bei MediaTypes müssten eigentlich 3 Schlüssel mit den entsprechenden Werten auftauchen. Wenn ich mir mit einem echo die Werte $key1 und $value2 ausgeben lassen funktioniert das auch. Eigentlich müsste da nach meinem Verständnis so etwas herauskommen:
Oder etwa nicht?
Viele Dank für's Durchlesen.
Nedan
folgendes XML-Dokument:
Code:
<Collection> <DVD> <ProfileTimestamp>2010-06-09T19:35:47.000Z</ProfileTimestamp> <ID>4010232044778.5</ID> [COLOR=Red]<MediaTypes> <DVD>true</DVD> <HDDVD>false</HDDVD> <BluRay>false</BluRay> </MediaTypes>[/COLOR] <DVD> </Collection>
PHP-Code:
$xml = simplexml_load_file('test.xml');
$c_dvd = 0;
/** Foreach root element **/
foreach($xml as $key => $value){
/** foreach element on level 1 **/
foreach($value as $key => $value1) {
$dvds[$c_dvd][$key] = (string) $value1;
/** If element has children **/
if(count($value1) > 0) {
/** foreach element on level 2**/
foreach($value1 as $key1 => $value2) {
$dvds[$c_dvd][$key][$key1] = (string) $value2;
}
}
}
$c_dvd++;
}
Code:
Array ([0] => Array ( [ProfileTimestamp] => 2010-06-09T19:35:47.000Z [ID] => 4010232044778.5 [COLOR=Red][MediaTypes] => f [/COLOR][COLOR=Red][UPC] => 4-010232-044778[/COLOR] ) )
Code:
Array ([0] => Array ( [ProfileTimestamp] => 2010-06-09T19:35:47.000Z [ID] => 4010232044778.5 [COLOR=Red][MediaTypes] => array ( [/COLOR][COLOR=Red][DVD]=>true [HDDVD]=>false [BluRay]=>false[/COLOR] [COLOR=Red] ) [/COLOR][COLOR=Red][UPC] => 4-010232-044778[/COLOR] ) )
Viele Dank für's Durchlesen.
Nedan
Kommentar