php類常量的使用詳解
可以把在類中始終保持不變的值定義為常量。在定義和使用常量的時候不需要使用 $ 符號。
常量的值必須是一個定值,不能是變量,類屬性,數(shù)學(xué)運算的結(jié)果或函數(shù)調(diào)用。
接口(interface)中也可以定義常量。更多示例見文檔中的接口部分。
自 PHP 5.3.0 起,可以用一個變量來動態(tài)調(diào)用類。但該變量的值不能為關(guān)鍵字(如 self,parent 或 static)。
Example #1 定義和使用一個類常量
<?php class MyClass { const constant = 'constant value'; function showConstant() { echo self::constant . "\n"; } } echo MyClass::constant . "\n"; $classname = "MyClass"; echo $classname::constant . "\n"; // 自 5.3.0 起 $class = new MyClass(); $class->showConstant(); echo $class::constant."\n"; // 自 PHP 5.3.0 起 ?>
Example #2 靜態(tài)數(shù)據(jù)示例
<?php class foo { // 自 PHP 5.3.0 起 const bar = <<<'EOT' bar EOT; } ?>
和 heredoc 不同,nowdoc 可以用在任何靜態(tài)數(shù)據(jù)中。
Note:
Nowdoc 支持是在 PHP 5.3.0 新增的。
更多可以參考這篇文章:http://php.net/manual/zh/language.oop5.constants.php#language.oop5.constants
注意:不像其他的面向?qū)ο缶幊陶Z言,在php中,類不能對某個屬性變量使用final修飾符。
如果要聲明某個屬性為常量,可以使用const關(guān)鍵字,并且無需使用美元符號作為變量名前綴,也無需使用訪問權(quán)限修飾符。常量意味著雖然可以訪問該變量,但不能修改該變量的值。例如下邊的代碼聲明了常量屬性con_var:
<?php class Foo{ const con_var="常量屬性的值不能被修改<br />"; public function method_a(){ echo (self::con_var); } } echo(Foo::con_var); $myFoo=new Foo(); echo ($myFoo->method_a()); ?>
常量屬性不能使用對象訪問,僅能使用類訪問,在類本體內(nèi),可以使用“self::常量名”,在類本體外可以使用“類名::常量名”。
- PHP中類屬性與類靜態(tài)變量的訪問方法示例
- PHP取得一個類的屬性和方法的實現(xiàn)代碼
- php類中private屬性繼承問題分析
- PHP獲取類中常量,屬性,及方法列表的方法
- php中類和對象:靜態(tài)屬性、靜態(tài)方法
- PHP動態(tài)地創(chuàng)建屬性和方法, 對象的復(fù)制, 對象的比較,加載指定的文件,自動加載類文件,命名空間
- php 類中的常量、靜態(tài)屬性、非靜態(tài)屬性的區(qū)別
- PHP用正則匹配form表單中所有元素的類型和屬性值實例代碼
- php過濾html標(biāo)記屬性類用法實例
- PHP的反射動態(tài)獲取類方法、屬性、參數(shù)操作示例
- php類常量用法實例分析
- PHP 面向?qū)ο蟪绦蛟O(shè)計之類屬性與類常量實現(xiàn)方法分析
相關(guān)文章
php中經(jīng)典方法實現(xiàn)判斷多維數(shù)組是否為空
傳統(tǒng)的判斷數(shù)組為空 一般用count或者key 而且多維數(shù)組的話很麻煩2011-10-10判斷php數(shù)組是否為索引數(shù)組的實現(xiàn)方法
本篇文章是對判斷php數(shù)組是否為索引數(shù)組的方法進行了詳細的分析介紹,需要的朋友參考下2013-06-06PHP實現(xiàn)大數(shù)(浮點數(shù))取余的方法
這篇文章主要介紹了PHP實現(xiàn)大數(shù)(浮點數(shù))取余的方法,結(jié)合實例形式分析了php數(shù)學(xué)運算相關(guān)操作技巧,需要的朋友可以參考下2017-02-02PHP實現(xiàn)的XML操作類【XML Library】
這篇文章主要介紹了PHP實現(xiàn)的XML操作類,涉及php針對數(shù)組、xml的轉(zhuǎn)換、序列化、反序列化等相關(guān)操作技巧,需要的朋友可以參考下2016-12-12使用PHP會話(Session)實現(xiàn)用戶登陸功能
本篇文章是對PHP會話(Session)實現(xiàn)用戶登陸功能進行了詳細的分析介紹,需要的朋友參考下2013-06-06學(xué)習(xí)discuz php 引入文件的方法DISCUZ_ROOT
這是discuz中定義論壇安裝根目錄的一個常量?,F(xiàn)在我們就來分析一下這個很簡單但是非常實用的常量。2009-06-06