PHPGangsta - Der praktische PHP Blog

PHP Blog von PHPGangsta


Wer nutzt die ungewöhnlichen PHP-Tags?

with 23 comments

Vorgestern begann eine interessante Diskussion inklusive eines RFC in der PHP-Internals-Mailingliste, in der es um die Abschaffung zweier alter und selten genutzter Möglichkeiten geht, PHP-Code als solchen zu markieren. Normalerweise beginnt PHP-Code mit <?php oder <?

Es gibt aber weitere Möglichkeiten für diesen Einsatzzweck:

<script language="php">
    echo 'Hallo';
</script>

<% echo 'Hallo'; %>

php_tagsNun ist die Frage: Soll bzw. kann man diese alternativen Tags aus der PHP-Engine entfernen? Ein Gegenargument wäre dass durch die Entfernung plötzlich der PHP-Quelltext an den Browser ausgegeben würde, ein Besucher der Webseite würde also den möglicherweise geheimen Sourcecode mit Passwörtern usw. zu Gesicht bekommen. Ist das eine reelle Gefahr die die Abschaffung für immer oder mindestens lange Zeit verhindert? Oder betrifft das nur ein paar hundert weltweit genutzte kleine Webseiten, auf die man keine Rücksicht nehmen kann?

Welche Vorteile hätte eine Entfernung, bringt es neben dem verringerten PHP-Engine-Code auch kleine Performancevorteile oder ähnliches?

In welcher Version sollte man diese Tags als DEPRECATED markieren, um so die Admins auf die nahende Entfernung hinzuweisen? Wie viele Admins oder Programmierer bekommen die DEPRECATED-Meldungen im Error-Log überhaupt mit?

Wer von euch nutzt diese ungewöhnlichen Methoden in seinem Code oder hat ihn bereits in Fremdcode oder Bibliotheken gesehen? Ich muss zugeben dass ich von den beiden Möglichkeiten in den letzten 10 Jahren nichts gehört habe und nicht wußte dass sie existieren, und sie demnach auch noch nie irgendwo gesehen habe…

Written by Michael Kliewe

September 12th, 2014 at 11:37 am

Posted in PHP

Tagged with , ,

23 Responses to 'Wer nutzt die ungewöhnlichen PHP-Tags?'

Subscribe to comments with RSS or TrackBack to 'Wer nutzt die ungewöhnlichen PHP-Tags?'.

  1. Ich wär‘ für „weg-damit“. Ich kenne diese Syntax nun schon ewig und habe keine einzige „in-the-wild“ Seite gesehen, die es nutzen würde. Die wenigen, die es tun, haben sicherlich keinen Grund, dabei bleiben zu _müssen_, da ja die „normale“ (=weitverbreiteste) Synatx bleibt und funktioniert.
    Exoten leben halt ständig in der Gefahr, dass Sie irgendwann verschwinden.

    Sascha Presnac

    12 Sep 14 at 11:45

  2. Ich bezweifel, dass die Tags großartig genutzt werden, aber auch wenn: Diese Seiten werden meines Erachtens eh nicht problemlos auf PHP7 laufen können, so dass das Problem bei der Portierung (falls dies überhaupt gemacht wird) auffallen wird.

    KingCrunch

    12 Sep 14 at 11:46

  3. Es gibt Dinge, die sollte man nicht lange diskutieren sondern machen. Dieses gehört dazu. Noch nie in der Wildnis gesehen. Weg damit.

    Nico

    12 Sep 14 at 12:37

  4. Die lange Schreibweise ist mir auch neu, die kurze kenne ich hingegen. Allerdings habe ich beide noch nie in der freien Wildbahn angetroffen. Und als Freelancer habe ich in den letzten Jahren eine Menge großer PHP Projekte gesehen…
    Bin da mit KingCrunch einer Meinung. Wer exotisches nutzt, muss sich der potenziellen Gefahr bewusst sein.

    Und letztlich gibt es ja für sowas auch den BC Breaks Abschnitt in den Changelogs.

    Martin

    12 Sep 14 at 12:43

  5. Die ASP-Style-Tags kannte ich aus der Theorie, habe sie aber noch nie in freier Wildbahn gesehen. Das Script-Tag kannte ich hingegen überhaupt nicht. Ich kann mir auch beim besten Willen nicht vorstellen, warum irgendjemand das nutzen wollen würde, ausgenommen vielleicht für Uralt-Editoren auf dem Niveau von Frontpage.

    Apropos Editor: PhpStorm kann mit dem Script-Tag ebenfalls nichts anfangen.

    Carsten

    12 Sep 14 at 13:47

  6. Ich wusste von der Existenz, habe sie aber nie genutzt oder irgendwo gesehen. Ich denke, dass man sie ohne größere Probleme entfernen könnte/sollte.

    Jacob

    12 Sep 14 at 13:49

  7. Die einzigen Tags, die ich in-the-wild gesehen habe (und auch selbst nutze) sind <?php und <?=

    Matthias

    12 Sep 14 at 13:50

  8. Ganz klar: „Weg damit!“ Sogar das <? könnte meiner Meinung nach weg.

    Chris

    12 Sep 14 at 14:33

  9. If it ain’t broke, don’t fix it. Der Performancegewinn dürfte auch gegen null gehen.

    Oliver

    13 Sep 14 at 00:30

  10. Keep it as simple as possible ! Solange ein Feature keinen Mehrwert für irgendwen bietet (oder gar für 99% der Nutzer), dann weg damit! Gute Modernisierung erfordert knallhartes Wegstreichen von allem was nicht unbedingt gebraucht wird, und ich finde daß man diesen Ansatz bei PHP durchaus gehen sollte.

    Chris

    13 Sep 14 at 15:31

  11. Weg damit. suggeriert ein Funktionsprinzip (clientseitige Verarbeitung), die schlichtweg nicht gegeben ist und führt Spracheinsteiger auf den falschen Weg in Ihrem Verständnis von der Rolle PHPs in der Client-Server-Interaktion.

    nikosch

    17 Sep 14 at 20:39

  12. Meh, Kommentarsystem ->

    Weg damit. [Klammer auf]script[Klammer zu] suggeriert ein Funktionsprinzip…

    nikosch

    17 Sep 14 at 20:40

  13. Kannte ich aus den Referenzen, live gesehen habe ich es noch nicht. Aus meiner Sicht kann es weg. Ab und zu muss man auch mit der Abwärtskompatibilität brechen um echte Altlasten loszuwerden!

    Guido

    18 Sep 14 at 20:38

  14. Hab ich auch noch nie in Verwendung gesehen. Braucht kein Mensch, weg damit.

    Markus

    19 Sep 14 at 09:20

  15. In einem Buch hatte ich mal gelesen das es die gibt, aber selbst nie genutzt und auch seither nie wieder gesehen. Meinetwegen kann das entfernt werden.

    Oliver

    4 Okt 14 at 12:45

  16. kenne keinen, der die benutzt. ausrümpeln und weg damit!

    phillipschl

    6 Okt 14 at 16:22

  17. Von der Nutzung von <? anstatt <?php würde ich aber auch abraten. Short open tags sind optional und meines erachtens gehört das auch unter Deprecated. War ja auch schon in Diskussion bei PHP. Aktuelle Plesk Systeme verwenden auch cgi und falls es global deaktiviert ist müsste man in jedes Verzeichnis eine ini ablegen – also warum nicht gleich raus damit. Und mit XML steht es auch in Konflikt.

    Sven

    25 Okt 14 at 07:09

  18. Gebraucht werden diese Alternativen nicht. Wie viel besser wird PHP wenn diese beiden Möglichkeiten entfernt werden?

    Thorsten

    26 Okt 14 at 02:46

  19. Ich kenne die Tags von den Anfängen der PHP als PHP und ASP als Alternativen galten.
    Die sollten entfernt werden. Die kurze Tags finde ich aber praktisch und sollten eigentlich beibehalten werden.

    Wahid

    27 Okt 14 at 21:54

  20. Die Tags hab ich auch erst kennengelernt als ich mich auf einen PHP Unterricht vorbereitet habe.
    Selbst hab ich sie noch nie benutzt oder auch nur gesehen.

    Ich benutze eigentlich immer die normalen Tags, da diese einfach immer funktionieren.

    Frank

    Frank

    9 Dez 14 at 14:13

  21. Den tag mit den %-Zeichen sollte man wohl kennen, da ich selber schon einige ältere Projekte betreut habe, bei denen alle Methoden gleichzeitig verwurstet genutzt wurden. Ich finde auch, dass diese Tags entfernt gehören, wobei man aber nach wie vor den offiziellen Weg über „DEPRECATED“-Meldungen gehen sollte.

    Das HTML-Script-Tag hat aber mit der serverseitigen Verarbeitung nichts zu tun. Sofern jemand PHP installiert hat und entsprechend alles eingerichtet hat, geht das auch. Es ist keine PHP-spezifische Funktion, sondern eher ein Feature der Browser bestimmte Scriptsprachen zu interpretieren.

    WorkerBee

    16 Dez 14 at 15:00

  22. kenne auch keinen, der diese seltsamen Tags benutzt und ich sehe auch keinen Grund, diese nicht aus den zukünftigen Versionen zu entfernen.

    Also weg damit!

    Stefan

    18 Dez 14 at 11:08

  23. Die ASP-Tag sollte auf jeden Fall bleiben, den sieht man (zugegeben selten) auch in freier Wildbahn.

    Anon

    16 Jan 15 at 22:20

Leave a Reply

You can add images to your comment by clicking here.