官术网_书友最值得收藏!

2.5 常量

常量存放的是值不變化的、固定的數據,即在腳本的其他任何位置都不能修改常量的值,如圓周率、自然對數底和牛頓引力等。

2.5.1 聲明和使用常量

1. 聲明常量

在PHP中,需要使用define()函數來聲明常量,語法格式如下。

bool define(string $name, mixed $value[, bool $case_insensitive]);

define()函數,如果聲明成功則返回true,否則返回false。其中,$name為常量名;$value為常量值;$case_insensitive為可選參數,用于指定常量名是否大小寫敏感。

2. 使用常量

在PHP中,獲取常量的值有兩種方法。

(1)使用常量名直接獲取常量值。

(2)使用constant()函數獲取常量值,語法格式如下。

mixed constant(string $name);

constant()函數的返回值為常量值。其中,$name為常量名或存儲常量名的變量。

注意:如果常量未定義,使用constant()函數獲取常量值時,系統會報出錯誤提示,因此通常在使用constant()函數之前需要判斷常量是否已經定義。

說明:constant()函數和直接使用常量名輸出的效果是一樣的,但是使用constant()函數可以通過變量動態地輸出不同的常量值,在使用上要靈活很多。

3. 判斷常量是否被定義

在PHP中,使用defined()函數判斷常量是否被定義,語法格式如下。

bool defined(string $name);

defined()函數,如果常量已經被定義則返回true,否則返回false。其中,$name為常量名或存儲常量名的變量。

【實例2-23(25_Constant.php)】 聲明一個值為“常量”的常量,然后判斷常量是否被定義,最后分別使用兩種方法輸出常量值。實例代碼如下。

<?php
  //設置編碼格式,正確顯示中文
  header("content-Type: text/html; charset=gb2312");
  define(CONSTANT, '常量');    //定義一個“常量”
  //定義一個字符串型變量,存放常量名
  $name = 'CONSTANT';
  echo CONSTANT.'<br/>';       //顯示結果
  //判斷常量是否被定義
  $boo = defined($name);
  if ($boo)
  {
    echo'常量已被定義!<br/>';  //顯示結果
    echo constant($name);    //顯示結果
  }
?>

運行結果如圖2-23所示。

2d23

圖2-23 常量的聲明和使用

2.5.2 預定義常量

在PHP中,除了可以聲明自定義常量外,還可以使用預定義常量來獲取PHP中的信息。常用的預定義常量見表2-2。

表2-2 常用的預定義常量

043-i

注:__FILE__和__LINE__中的“__”是兩條下劃線,不是一條下劃線。

說明:1. 表2-2中以E_開頭的預定義常量是PHP的錯誤調試部分。如需詳細了解,請參考error_reporting()函數。

2. 使用預定義常量的方法與使用自定義常量的方法相同。

主站蜘蛛池模板: 鹤峰县| 太原市| 禄丰县| 岳池县| 泗阳县| 济阳县| 同心县| 兴化市| 嘉祥县| 拉孜县| 鸡东县| 建德市| 潜山县| 永平县| 琼中| 射阳县| 济阳县| 栾川县| 新邵县| 城固县| 贵南县| 天祝| 萨嘎县| 成都市| 沾化县| 抚州市| 宁晋县| 车致| 札达县| 台前县| 突泉县| 河北区| 台北市| 新兴县| 泸溪县| 锡林浩特市| 锡林郭勒盟| 广丰县| 唐山市| 岳阳县| 思茅市|