dedlfix: Sonderzeichen in externen Dateien

Beitrag lesen

echo $begrüßung;

ich möchte eine externe Datei mit Metatags als reiner Text mit uncodierten deutschen und internationalen Sonderzeichen per PHP includieren.

Wenn du "uncodiert" sagst, meinst du sicherlich, dass du keine Entities dafür verwendet hast. Ansonsten gibt es kein "uncodiert" bei einer Text-Datei. Jedes Schriftzeichen wird durch einen bestimmten Code repräsentiert. Es gibt mehrere Systeme, Schriftzeichen zu einem Code zuzuordnen.
Es gilt nun erst einmal herauszufinden, in welcher Kodierung das Dokument vorliegt. Das könnte beispielsweise ISO-8859-1 oder UTF-8 oder ... sein.
Wenn du nicht weißt, in welcher Kodierung der Text vorliegt, bleibt dir nur zu Raten und zu Experimentieren. Das einfachste wird sein, den Text in einen Browser zu laden und dann durch Umstellen der Zeichenkodierung herauszufinden, welche die gewünschte Darstellung ergibt.

Jetzt gilt es zu ermitteln, in welcher Kodierung die Dokumente vorliegen, in die du deine Texte einzubinden versuchst.
Damit weißt du nun, welche Umwandlung du beim Einbinden gegebenenfalls verwenden musst.

Die Mitgabe von HTTP-Headern hat leider auch nicht geholfen.

Wenn du von der Kodierungsangabe (charset) im HTTP-Header sprichst, geht man i.A. davon aus, dass du die auch wirklich meinst. Diese Angabe in den HTTP-Headern hat nämlich Vorrang vor einer im HTML-<head> verwendeten http-equiv-Angabe eines <meta>-Tags. Letztere kommt zur Anwendung, wenn der Server keine Kodierungsangabe im HTTP-Header mitsendet, und auch wenn die Datei aus dem lokalen Dateisystem geöffnet wird. Ist keine der beiden Angaben vorhanden, darf/muss der Browser raten.

echo "$verabschiedung $name";