PHP 的內建常數

昨晚在 PTT 的 PHP 板回了一篇文章,提到 PHP 的內建常數;現在來分享一下,順便作個紀錄,方便日後查詢。

PHP 有不少實用的內建常數,方便我們寫程式時直接呼叫。
有興趣研究的人,可以看看這個網頁,或是用 get_defined_constants() 把內建常數全部倒進陣列,再用 var_dump()print_r() 顯示。

下表列出一些我覺得常用的內建常數,範例值來自 64 位元版本的 FreeBSD ports 安裝之 PHP 5.3.2:

常數名稱 常數型態 範例值或說明 可用版本
PHP_VERSION string “5.3.2″ 無限制
PHP_MAJOR_VERSION integer 5 5.2.7+
PHP_MINOR_VERSION integer 3 5.2.7+
PHP_RELEASE_VERSION integer 2 5.2.7+
PHP_EXTRA_VERSION string “" 5.2.7+
PHP_OS string “FreeBSD" 無限制
PHP_PREFIX string “/usr/local" 4.3.0+
PHP_BINDIR string “/usr/local/bin" 無限制
PHP_LIBDIR string “/usr/local/lib/php" 無限制
PHP_DATADIR string “${prefix}/share" 無限制
PHP_SYSCONFDIR string “/usr/local/etc" 無限制
PHP_LOCALSTATEDIR string “/usr/local/var" 無限制
PHP_CONFIG_FILE_PATH string “/usr/local/etc" 無限制
PHP_CONFIG_FILE_SCAN_DIR string “/usr/local/etc/php" 無限制
PHP_SHLIB_SUFFIX string “so" 4.3.0+
PHP_EOL string 此變數可用來判斷 “\n"、"\r"、"\r\n"(三個通吃,超好用)。 4.3.0+
PHP_MAXPATHLEN integer 1024 5.3.0+
PHP_INT_MAX integer 9223372036854775807 4.0.4+ 與 5.0.5+
DATE_COOKIE string “l, d-M-y H:i:s T"
輸出範例:
Wednesday, 14-Jul-10 20:25:07 CST
5.1.1+
DATE_ISO8601 string “Y-m-d\TH:i:sO"
輸出範例:
2010-07-14T20:26:18+0800
5.1.1+
DATE_RFC822 string “D, d M y H:i:s O"
輸出範例:
Wed, 14 Jul 10 20:27:39 +0800
5.1.1+
DATE_RFC850 string “l, d-M-y H:i:s T"
輸出範例:
Wednesday, 14-Jul-10 20:28:44 CST
5.1.1+
DATE_RFC1036 string “D, d M y H:i:s O"
輸出範例:
Wed, 14 Jul 10 20:29:40 +0800
5.1.1+
DATE_RFC1123
DATE_RSS
string “D, d M Y H:i:s T"
輸出範例:
Wed, 14 Jul 2010 20:31:51 CST
5.1.1+
DATE_RFC2822 string “D, d M Y H:i:s O"
輸出範例:
Wed, 14 Jul 2010 20:31:51 +0800
5.1.1+
DATE_RFC3339
DATE_ATOM
DATE_W3C
string “Y-m-d\TH:i:sP"
輸出範例:
2010-07-14T20:36:18+08:00
5.1.1+