dedlfix: HTML durch PHP downloaden

Beitrag lesen

Hi!

Sind Umlaute in PHP-Variablennamen zulässig? Wäre mir neu, aber ich bin mir nicht ganz sicher.

Ja. Variablennamen müssen diesen RegEx-Ausdruck erfüllen: [a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*. Damit sind alle Umlaute in den Kodierungen ISO-8859-x und UTF-8 abgedeckt. Der selbe Ausdruck gilt für Funktions- und Klassennamen.

Mein letzter Stand ist, dass es zwar erlaubt ist, das Script aber auf nem Server mit ner anderen Zeichenkopierung evtl. nicht mehr läuft.

Eine Zeichenkodierung des Servers (was auch immer du darunter konkret verstehst) spielt beim Script keine Rolle. PHP (<6) liest den Inhalt der Datei byteweise, ohne Mehrbyte-Kodierungen zu berücksichtigen. Nur wenn gleiche Umlaute unterschiedlich kodiert sind, sind sie nicht gleich. Das kann bei anders kodierten zu inkludierenden Dateien der Fall sein, was aber ein Problem des Erstellers ist, wenn er nicht auf Konsistenz achtet. Wenn alles nach ISO-8859-1 oder alles nach UTF-8 kodiert ist, kann es prinzipbedingt keine Probleme geben. Weiterhin kann es ein Problem werden, bei Scripten, Scriptsammlungen oder Frameworks, die man in eigene Projekte einbinden will, wenn die Kodierungen nicht stimmen. Wenn man, wie eigentlich üblich, englische Bezeichner nimmt, hat man das Problem jedoch nicht.

Ist also in jedem Fall ne ganz schlechte Idee.

Ich wüsste nicht, warum Umlauten eine ganz schlechte Idee sein sollten und nicht etwa Inkonsitenzen zwischen den Kodierungen verschiedener Dateien. "In jedem Fall" stimmt auch nicht, siehe oben.

Lo!