Længlich: PHP Seiten Inhalt wird im Browser geparst

Beitrag lesen

Konnichiwa!

Reicht hier nicht schon ein simples Suchen & Ersetzen über alle Dateien? Das können die meisten Texteditoren.
Einfach "<? " durch "<?php " ersetzen.

Das geht nicht in jedem Kontext gut. Beispiel: echo '<?xml ...';

Die zu ersetzende Folge zwischen den " ist Kleiner-Fragezeichen-Leerzeichen, "<?xml" wird also nicht ersetzt, und "<?php" wird auch nicht zu "<?phpphp". ;-)
Da die Zeichenfolge in Strings extrem selten vorkommen dürfte, kann man die Stellen, an denen das passieren kann, wahrscheinlich abschätzen und ggf. manuell korrigieren.

Okay, für die Ausgabedinger "<?= $foo ?>" braucht man wohl einen regulären Ausdruck, um <?php echo($foo); ?>" draus zu machen, aber ein Problem sollte das auch nicht sein.

Vor einem ?> wird kein Semikolon benötigt, und echo ist keine Funktion. Das Klammernsetzen macht hier aus der einfachen Variablen $foo einen Ausdruck. Es reicht also schon <?= gegen <?php echo_ zu tauschen. (Das _ stellt ein Leerzeichen dar)

Daß man die Klammern nicht braucht, wußte ich, aber ich finde den Code so übersichtlicher, zumindest, wenn an der Stelle wirklich ein Ausdruck folgt und nicht nur eine Variable. Das mit dem Semikolon ist mir neu, danke! Dann reicht wirklich einfaches Suchen & Ersetzen.

Viele Grüße vom Længlich