« 22.如何 讀取系統的環境變數? | (回到Blog入口) | 24. PHP 支援哪些敘述語法? »

23. 如何定義常數(constant)?

jollen 發表於 October 27, 2006 2:21 PM

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

版權聲明

請參閱頁面底部的 CC 授權條款。此外,Jollen's PHP 專欄禁止引用、修改與轉貼,如果您想與朋友分享的話,我們只允許網站連結(hyperlink)的形式。

發表一個評論

(如果你此前從未在此 Blog 上發表過評論,則你的評論必須在 Blog 主人驗證後才能顯示,請你耐心等候。)

| Top | Jollen's Forum |
Jollen's PHP 專欄採用 Attribution-NonCommercial-NoDerivs 2.5 授權條款
Copyright(c) 2001-2007,2010 www.jollen.org