Lieber molily,
Da die Datei in ISO-8829-1 kodiert ist (default von PHP5 und für mich so in Ordnung)
Das hat nichts mit PHP zu tun. Der XML-Parser arbeitet nach XML-Regeln. Default ist da UTF-8.
meine XML-Datei beginnt so:
<?xml version="1.0" encoding="ISO-8859-1" standalone="yes"?>
Falls du das DOM-Modul von PHP verwendest:
Tue ich nicht. Offensichtlich ist das für Webspace, der tatsächlich noch PHP4 bereitstellt, nicht verfügbar.
Du machst das schon völlig richtig. Und höchstwahrscheinlich arbeitet auch der eingesetzte XML-Parser völlig korrekt und löst die numerische Zeichenreferenz korrekt auf. Der Fehler muss woanders liegen (offenbar ein Denkfehler ;)).
Tja, mit ASCII-Code 128 (ja, als "€"!) wird das Euro-Zeichen "korrekt" gespeichert und auch wieder angezeigt. Ich verstehe das nicht wirklich. Meines Wissens ist in ISO-8859-1 das Euro-Zeichen nicht enthalten. Auch nicht als ASCII-Wert 128. Spielt mir meine Windows-Umgebung da einen Streich? Ich muss das bei Gelegenheit unter "echten" Bedingungen testen. Sehr seltsam das Ganze...
Liebe Grüße aus Ellwangen,
Felix Riesterer.
ie:% br:> fl:| va:) ls:[ fo:) rl:° n4:? de:> ss:| ch:? js:) mo:} zu:)