hotti: Endekennzeichnung einer PHP-Datei

Beitrag lesen

hi,

das trifft's nicht ganz. Aber es gilt als guter Rat, diese Endemarkierung wegzulassen, denn damit verhindert ma sehr wirksam, dass am Ende ungewollt eine Ausgabe an den Client erfolgt (z.B. ein Leerzeichen oder ein Zeilenumbruch).

Es gäbe noch eine andere Möglichkeit, dies zu verhindern, dazu werden beide Tags (<?php .. ?>) weggelassen, eine Klassen-Datei sähe dann z.B. so aus:

  
class Foo{}  
return 1;  

D.h., die Datei enthält nur noch den Code. Das Einbinden erfolgt dann nicht mit include/require, statdessen wird die Datei mit file_get_contents() eingelesen und deren Inhalt an eval() übergeben. Wichtig ist die letzte Zeile return(1); somit kann geprüft werden, ob die Kompilierung per eval bis dahin durchgelaufen ist. Interessant ist in diesem Zusammenhang der zweite optionale Parameter für file_get_contents() womit die Datei aus dem include_path gelesen werden kann, ohne diesen Pfad extra angeben zu müssen.

Hotti