Heim  >  Artikel  >  Backend-Entwicklung  >  Eine Frage zu Thinkphp-Vorlagenkonstanten.

Eine Frage zu Thinkphp-Vorlagenkonstanten.

WBOY
WBOYOriginal
2016-09-08 08:44:01977Durchsuche

Im Handbuch heißt es: Standardmäßig ersetzt die Vorlagenersetzung nur die speziellen Zeichenfolgen in der Vorlagendatei und nicht den Ausgabeinhalt in den dynamischen Daten.

Aber ich kann die Vorlagenkonstante __SELF__ in der PHP-Datei drucken. Warum ist das so? Verstehe dieses Prinzip nicht ganz. .

<code><?php 
public function add(){
        var_dump(__SELF__); //输出string '/Home/Order/add.html' (length=20)
}
?></code>

Antwortinhalt:

Im Handbuch heißt es: Standardmäßig ersetzt die Vorlagenersetzung nur die speziellen Zeichenfolgen in der Vorlagendatei und nicht den Ausgabeinhalt in den dynamischen Daten.

Aber ich kann die Vorlagenkonstante __SELF__ in der PHP-Datei drucken. Warum ist das so? Verstehe dieses Prinzip nicht ganz. .

<code><?php 
public function add(){
        var_dump(__SELF__); //输出string '/Home/Order/add.html' (length=20)
}
?></code>

Natürlich kann es ausgedruckt werden. Was verstehst du nicht

Das __self__ wird hier als magische Konstante verwendet. Versuchen Sie, __public__ zu drucken, und sehen Sie, ob Sie alles drucken können

TP scheint die magische Konstante __self__ nicht blockiert zu haben, sodass sie gedruckt werden kann

Es scheint zwei Arten von PHP-Variablen zu geben, eine mit $ und eine ohne $. Die Zuweisung wird durch define('_PHP_FILE_', 'aaa') deklariert.

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn