PHP ohne Start- / End-Tags?

7

Ist es möglich, dass php die Anfangs- / End-Tags ( <?php ?> ) für einige der Dateien nicht benötigt? Der Code sollte standardmäßig als PHP interpretiert werden.

Ich bin mir bewusst, dass ich das End-Tag ( ?> ) weglassen kann.

    
vise 06.09.2009, 15:05
quelle

5 Antworten

12

Nein. Der Interpreter benötigt die Tags, um zu wissen, was zu parsen ist und was nicht.

    
code_burgar 06.09.2009, 15:08
quelle
11

Wenn Sie Ihr PHP-Skript über die Befehlszeile aufrufen möchten, können Sie die Skript-Tags mit dem Schalter -r belassen. Auszug aus man php :

%Vor%

Nun können Sie Ihr Skript auf folgende Weise aufrufen:

%Vor%     
Török Gábor 18.12.2009 13:38
quelle
5

Es ist besser, kein End-Tag zu verwenden. Begin-Tag ist erforderlich.

Wie MaoTseTongue erwähnt, steht in der Zend-Dokumentation geschrieben:

Für Dateien, die nur PHP-Code enthalten, ist das schließende Tag ("? & gt;") niemals erlaubt. Es wird von PHP nicht benötigt, und das Auslassen verhindert das versehentliche Einfügen von Leerzeichen in die Antwort.
    
Thinker 06.09.2009 15:09
quelle
1

Sie können auch eine Textdatei mit der Erweiterung .php erstellen und eine andere 'echte' php-Datei verwenden, um diese Datei zu laden, zB

Fake PHP-Datei

%Vor%

Echte PHP Datei

%Vor%

Außerdem könntest du einige Tricks von mod_rewrite verwenden, um dem Web-Nutzer das Gefühl zu geben, die php-Datei selbst zu durchsuchen (zB Ссылка )

.htaccess-Datei:

%Vor%

Wenn ich mich jedoch richtig erinnere, wird Ihre Verarbeitung etwas langsamer und es gibt einige Probleme damit, wie eval ed-Code $GLOBALS , $_SERVER , $_POST , $_GET und andere vars behandelt . Sie müssen eine globale Variable erstellen, um diese Super-Globals in Ihren ausgewerteten Code zu übernehmen.

Zum Beispiel:

%Vor%     
Tony G. 06.09.2009 17:31
quelle
0

Sie können PHP-Code in einer Datei oder Datenbank speichern (ohne <?php ?> ) und dann mit eval() aktivieren. Beachten Sie, dass der Code langsamer ausgeführt wird. Ein eval() Beispiel kommt hier:

%Vor%

Ergebnis: a b c

    
Kristoffer Bohmann 06.09.2009 15:37
quelle

Tags und Links