PHP 有 2 個特別的常數:__FILE__ 與 __LINE__,分別代表目前正在被直譯執行的檔案名稱與執行的行數,例如:
<?php
function report_error($file, $line, $message) { echo "An error occured in $file on line $line: $message."; }
report_error(__FILE__, __LINE__, "Something went wrong!");
?>
使用者自定常數可使用 define() 函數,這些常數定義後,就不能再被重新定義。例如我們要定義 PI 常數的值為 3.14159:
<?php define("PI", 3.14159); echo PI; // 輸出為 3.14159 ?>
要注意的是,常數也有大小寫之分。除了使用者自定的常數外,在 PHP 4 裡也有一些事先定義好的常數:
□ __FILE__
目前正在被執行的檔案名稱。假如有一個檔案 (例如 test.php) 被 include 到另外一個檔案執行 (例如 index.php),則回報回來的檔名為 test.php,即被 include 的檔案。當我們在為 include 許多檔案的 PHP 4 程式除錯時,__FILE__ 常數就顯得特別好用。
□ __LINE__
回報正被執行的行位置,如果是被 include 的檔案,則和 __FILE__ 一樣,回報的是該被 include 的檔案正被執行的行位置。
□ PHP_VERSION
PHP 的版本常數。
□ PHP_OS
作業系統的名稱常數。
□ TRUE
布林值的 true。
□ FALSE
布林值的 false。
□ E_ERROR
程式因錯誤而中斷執行。這裡的錯誤指的是無法忽略而且影嚮 PHP 程式繼續執行的錯誤,並非 PHP 語法上的錯誤。
□ E_WARNING
PHP 執行時的小錯誤,這些錯誤屬警告訊息,並不影嚮程式的執行。
□ E_PARSE
PHP 的語法有錯。
□ E_NOTICE
發生不合法的狀況,但不影嚮程式的執行,例如計算的變數不存在時。
--jollen