Moin!
Genau. Ich habe mal eine kleine Testseite gemacht.
Doctype: HTML 4.01 Transitional.
<?php
$ausgabe="<p>Das ist <b>voll fett</b>!</p>";
echo $ausgabe;
?>
>
> Hier zeigt der MS IE 9 nichts an; Firefox 11.0 und Opera 11.62 zeigen an:
> Das ist voll fett!
> "; echo $ausgabe; ?>
> Das heisst, ab dem ersten > (dem von <p>) ist für sie das "unbekannte Tag" geschlossen, und der Rest ist eben Tagsoup, den sie zu interpretieren versuchen.
>
> Wenn man den gleichen PHP-Code mit den SCRIPT-Tags einpackt, also
> ~~~php
<script language="php">
> $ausgabe="<p>Das ist <b>voll fett</b>!</p>";
> echo $ausgabe;
> </script>
dann zeigen alle drei genannten Browser nichts an.
In beiden Fällen ist dein PHP kaputt und der Quellcode wird ausgeliefert. Sowas sollte nicht zur Bewertung von "Best Practice" herangezogen werden.
Im Gegenteil: Wenn der Browser alles schön versteckt - wie merkt man dann, dass was kaputt ist?
Ich habe mich schon vor sehr langer Zeit (ca. 2003) mit dem Thema Schreibweisen zum Einbetten von PHP in HTML beschäftigt und kam damals zum Schluss, dass die Schreibweise mit den SCRIPT-Tags die empfehlenswerteste sei.
Ich finde das gerade nicht!
Anfänger haben schon genug Probleme damit, zu verstehen, dass PHP serverseitig ausgeführt wird, und Javascript clientseitig. Wenn man diesen Unterschied jetzt auch noch subtil in dem language-Attribut eines Script-Tags versteckt, wird die Unterscheidbarkeit noch geringer.
Ein weiteres Argument für die SCRIPT-Schreibweise ist/war eben auch, dass einige WYSIWYG-Editoren (z.B. MS Frontpage 2000) bei der <?php ... ?>
Schreibweise den PHP-Quellcode einfach löschten, während sie SCRIPT-Bereiche unangetastet liessen.
Wer kaputte IDEs benutzt, die als Texteditor nichts taugen, dem ist sowieso nicht zu helfen. :)
Gegen die Script-Schreibweise spricht vor allem eines: Die Länge! Und als zweites: Die Ungebräuchlichkeit! Und als Drittes: Die Empfehlung seitens PHP für die PHP-Tags!
- Sven Rautenberg