PHP 向它運行的任何腳本提供了大量的預定義常數。
不過很多常數都是由不同的擴充函式庫定義的,只有在載入了這些擴充函式庫時才會出現,或是動態載入後,或是在編譯時已經包含進去了。
1. __LINE__
檔案中的目前行號
<?php header("Content-type: text/html; charset=utf-8");//设置编码 echo '这是第 “ ' . __LINE__ . ' ” 行'; //查看第几行 ?>
2. __FILE__
#檔案的完整路徑和檔案名稱。如果用在被包含檔案中,則傳回被包含的檔案名稱。
自PHP 4.0.2 起,__FILE__ 總是包含一個絕對路徑(如果是符號連接,則是解析後的絕對路徑),而在此之前的版本有時會包含一個相對路徑
<?php header("Content-type: text/html; charset=utf-8");//设置编码 echo '该文件位于 " ' . __FILE__ . ' " '; //查看路径 ?>
3. __DIR__
#檔案所在的目錄。如果用在被包含檔案中,則傳回被包含的檔案所在的目錄。
它等價於 dirname(__FILE__)。除非是根目錄,否則目錄中名不包括末尾的斜杠。 (PHP 5.3.0新增)
<?php header("Content-type: text/html; charset=utf-8");//设置编码 echo '该文件位于 " ' . __DIR__ . ' " '; ?>
4. __FUNCTION__
<?php function test() { echo '函数名为:' . __FUNCTION__ ; } test(); ?>
5. __CLASS__
類別的名稱(PHP 4.3.0 新加)。自 PHP 5 起本常數傳回該類別被定義時的名字(區分大小寫)。
在 PHP 4 中該值總是小寫字母的。類別名稱包括其被宣告的作用區域(例如 Foo\Bar)。注意自 PHP 5.4 起 __CLASS__ 對 trait 也起作用。當用在trait 方法時,__CLASS__ 是呼叫trait 方法的類別的名字
<?php class test { function _print() { echo '类名为:' . __CLASS__ . "<br>"; echo '函数名为:' . __FUNCTION__ ; } } $t = new test(); $t->_print(); ?>
6. #__METHOD__
<?php function test() { echo '函数名为:' . __METHOD__ ; } test(); ?>##########下一節