dedlfix: SimpleXML und Unicode

Beitrag lesen

echo $begrüßung;

<?xml version="1.0" encoding="UTF-8"?>
<content>
<entry encoding="&#261;">1</entry>
<entry encoding="&#377;">2</entry>
</content>

Will ich nun den Wert des encoding Attributes auslesen, bekomme ich nicht Beispielsweise "&#261;" zurück, sondern immer direkt das Zeichen. Gibt es eine Möglichkeit über simplexml "&#261;" auszulesen anstatt das  Zeichen ? - Ohne die xml Datei zu verändern!

Mit SimpleXML greifst du auf die Daten zu, nicht auf die Quelltext-Darstellung. Die Daten sind im Prinzip das was man haben möchte. Dass sie aufgrund der Besonderheiten von XML in einer anderen Form gespeichert sein können, ist dabei unerheblich. Wenn du ein &#261; statt eines ą haben möchtest musst du das & schon XML-gerecht als &amp; in der Quelle notieren. Oder du schreibst dir einen Halb-Parser, der die Dekodierung der Entities übergeht. Oder du verwendest htmlentities(). Warum möchtest du überhaupt eine Ersatzdarstellung statt des richtigen Zeichens haben?

echo "$verabschiedung $name";