男女疯狂一边摸一边做羞羞视频|啊好深好硬快点用力别停动态图|亚洲一区无码中文字幕|特级无码毛片免费视频播放▽|久久狠狠躁免费观看|国内精品久久久久久网站

語(yǔ)法

可以使用 const 關(guān)鍵字或 define() 函數兩種方法來(lái)定義一個(gè)常量。函數 define() 允許將常量定義為一個(gè)表達式,而 const 關(guān)鍵字有一些限制,具體可參見(jiàn)下述章節。一個(gè)常量一旦被定義,就不能再改變或者取消定義。

使用 const 關(guān)鍵字定義常量時(shí),只能包含標量數據(bool、int、float 、string)??梢詫⒊A慷x為一個(gè)表達式,也可以定義為一個(gè) array。還可以定義 resource 為常量,但應盡量避免,因為可能會(huì )造成不可預料的結果。

可以簡(jiǎn)單的通過(guò)指定其名字來(lái)取得常量的值,與變量不同,不應該在常量前面加上 $ 符號。如果常量名是動(dòng)態(tài)的,也可以用函數 constant() 來(lái)獲取常量的值。用 get_defined_constants() 可以獲得所有已定義的常量列表。

注意: 常量和(全局)變量在不同的名字空間中。這意味著(zhù)例如 true$TRUE 是不同的。

如果使用了一個(gè)未定義的常量,則會(huì )拋出 Error。 在 PHP 8.0.0 之前,調用未定義的常量會(huì )被解釋為一個(gè)該常量的 字符串,即(CONSTANT 對應 "CONSTANT" )。 此方法已在 PHP 7.2.0 中被廢棄,會(huì )拋出一個(gè) E_WARNING 級錯誤。(PHP 7.2.0 之前會(huì )發(fā)出一個(gè) E_NOTICE 級的錯誤。)參見(jiàn)手冊中為什么 $foo[bar] 是錯誤的(除非 bar 是一個(gè)常量)。這不適用于 (完全)限定的常量,如果未定義,將始終引發(fā) Error 。

注意: 如果要檢查是否定義了某常量,請使用 defined() 函數。

常量和變量有如下不同:

  • 常量前面沒(méi)有美元符號($);
  • 常量可以不用理會(huì )變量的作用域而在任何地方定義和訪(fǎng)問(wèn);
  • 常量一旦定義就不能被重新定義或者取消定義;
  • 常量只能計算標量值或數組。

示例 #1 定義常量

<?php
define
("CONSTANT""Hello world.");
echo 
CONSTANT// 輸出 "Hello world."
echo Constant// 拋出錯誤:未定義的常量 "Constant"
               // 在 PHP 8.0.0 之前,輸出 "Constant" 并發(fā)出一個(gè)提示級別錯誤信息
?>

示例 #2 使用關(guān)鍵字 const 定義常量

<?php
// 簡(jiǎn)單的標量值
const CONSTANT 'Hello World';

echo 
CONSTANT;

// 標量表達式
const ANOTHER_CONST CONSTANT.'; Goodbye World';
echo 
ANOTHER_CONST;

const 
ANIMALS = array('dog''cat''bird');
echo 
ANIMALS[1]; // 將輸出 "cat"

// 常量數組
define('ANIMALS', array(
    
'dog',
    
'cat',
    
'bird'
));
echo 
ANIMALS[1]; // 將輸出 "cat"
?>

?>

注意:

和使用 define() 來(lái)定義常量相反的是,使用 const 關(guān)鍵字定義常量必須處于最頂端的作用域,因為用此方法是在編譯時(shí)定義的。這就意味著(zhù)不能在函數內,循環(huán)內以及 iftry/catch 語(yǔ)句之內用 const 來(lái)定義常量。

參見(jiàn)

男女疯狂一边摸一边做羞羞视频|啊好深好硬快点用力别停动态图|亚洲一区无码中文字幕|特级无码毛片免费视频播放▽|久久狠狠躁免费观看|国内精品久久久久久网站