Moin aus dem Norden,
ich bastel nun schon zu lange und habe viel gegoogelt - leider komme ich nicht weiter.
Problem:
PHP4.xx, XML. Die Elementennamen übernehme ich in HTML als CSS Styles.
Ich parse XML mit einem gefundenen Script und es schmeisst mit ein wunderschönes Array zurück. Nun habe ich aber Elemente, die doppelt (absatz) vorkommen und die ich mit meiner Zuordnung nicht zu fassen bekomme.
nun schaffe ich es die einfachen Elemente (die nur einmal vorkommen) in HTML-Code zu packen, nur bei meinen zwei Absätzen ist der Elementname ja 0 und 1.
Ich muss dazu sagen, dass ich kein Profi bin ;o)
Vielen Dank für Hilfe.
Detl
ich bastel nun schon zu lange und habe viel gegoogelt - leider komme ich nicht weiter.
Problem:
PHP4.xx, XML. Die Elementennamen übernehme ich in HTML als CSS Styles.
Ich parse XML mit einem gefundenen Script und es schmeisst mit ein wunderschönes Array zurück. Nun habe ich aber Elemente, die doppelt (absatz) vorkommen und die ich mit meiner Zuordnung nicht zu fassen bekomme.
Code:
Array
(
[content] => Array
(
[_c] => Array
(
[thema] => Array
(
[_c] => Array
(
[headline] => Array
(
[_v] => Überschrift
)
[subheadline] => Array
(
[_v] => Unterüberschrift
)
[bu] => Array
(
[_v] => Bildunterschrift
)
[absatz] => Array
(
[0] => Array
(
[_v] => Ein Absatz
)
[1] => Array
(
[_v] => Ein zweiter Absatz
)
)
)
)
)
)
)
nun schaffe ich es die einfachen Elemente (die nur einmal vorkommen) in HTML-Code zu packen, nur bei meinen zwei Absätzen ist der Elementname ja 0 und 1.
PHP:
if(file_exists($myFile)) {
$xml=xml2ary(file_get_contents($myFile)); // der Parser wird aufgerufen
function print_arrayrekursive($array) {
global $tmp;
foreach($array as $key => $value) {
if(is_array($value)) {
$tmp = $key;
print_arrayrekursive($value);
continue;
}
else {
switch($tmp) { // Zuordnung für CSS
case 'image': print('<img src="./img/'.$value.'" alt="'.$value.'"/>');
break;
case 'absatz': print('<p><div class="'.strtoupper($tmp).'">'.$value.'</div></p>');
break;
default:
print('<div class="'.strtoupper($tmp).'">'.$value.'</div>');
break;
} */
}
}
}
print_arrayrekursive($xml);
}
Ich muss dazu sagen, dass ich kein Profi bin ;o)
Vielen Dank für Hilfe.
Detl