Hi,
ich habe ein script geschrieben dass ich dringend ab php4+
brauche, nur allerdings klappt es in php5 bisweilen.
Eine Klasse hilft mir hierbei eine simpleXML ähnliche Syntax
in php4 zu handhaben, leider werden bei der Klasse
die CDATA Tags rausgeschmissen, und ich wollte das ganze
mit ner simplen Funktion umgehen, da ich sowieso überall
CDATA brauch, allerdings sind die Änderungen (bzw. das
hinzufügen von den CDATA Tags) nicht außerhalb der
foreach schleife gültig, zumindest in php4, in php5 gehts
wiederum komischerweise, kann mir jemand verraten woran
das liegt und wie ich das lösen könnte?
Mein bisheriger Testversuch:
Merci schon mal, Gruß, darki
ich habe ein script geschrieben dass ich dringend ab php4+
brauche, nur allerdings klappt es in php5 bisweilen.
Eine Klasse hilft mir hierbei eine simpleXML ähnliche Syntax
in php4 zu handhaben, leider werden bei der Klasse
die CDATA Tags rausgeschmissen, und ich wollte das ganze
mit ner simplen Funktion umgehen, da ich sowieso überall
CDATA brauch, allerdings sind die Änderungen (bzw. das
hinzufügen von den CDATA Tags) nicht außerhalb der
foreach schleife gültig, zumindest in php4, in php5 gehts
wiederum komischerweise, kann mir jemand verraten woran
das liegt und wie ich das lösen könnte?
Mein bisheriger Testversuch:
PHP-Code:
// XML INIT
include "XMLParser.class.php";
$xml = file_get_contents('test.xml');
$parser = new XMLParser($xml);
$parser->Parse();
// XML EDIT
$parser->document->AddChild("newChild",array("attr1"=>"ab","attr2"=>"ce"),1);
// CONVERT 2 CDATA
function convert2CDATA($tagChilds)
{
foreach($tagChilds as $value)
{
$value->tagData="<![CDATA[".$value->tagData."]]>";
convert2CDATA($value->tagChildren);
}
}
convert2CDATA($parser->document->tagChildren);
echo $parser->GenerateXML();
// SAVE XML
$handle = fopen("test.xml","w+");
fwrite($handle,$parser->GenerateXML());
fclose($handle);
Kommentar