搜尋
首頁php教程php手册php const常量修饰符使用方法

在php中如果我们要定义常量有很多方法,但在类中我们要定义常量多半会用到const常量修饰符来定义了,下面小编来给各位同学介绍一下操作办法。

在PHP中定义常量是通过define()函数来完成的,但在类中定义常量不能使用define(),而需要使用const修饰符,类中的常量使用const定义后,其访问方式和静态成员类似,都是通过类名或在成员方法中使用self访问,但在PHP 5.3.0之后也可以使用对象来访问,被const定义的常量不能重新赋值,如果在程序中试图改变它的值将会出现错误,实例代码如下:

<?php
class MyClass {
    const CONSTANT = &#39;CONSTANT value&#39;; //使用const声明一个常量,并直接赋上初使值
    function showConstant() {
        echo self::CONSTANT . "<br>"; //使用self访问常量,注意常量前不要加"$"
        
    }
}
echo MyClass::CONSTANT . "<br>"; //在类外部使用类名称访问常量,也不要加"$"
$class = new MyClass();
$class->showConstant();
echo $class::CONSTANT; // PHP 5.3.0之后

?>

关注细节:使用const定义的常量名称前不需要使用“$“符号,且常量名称通常都是大写的。

试图为const定义的常量赋值,将会出现错误,代码如下:

<?php
class MyClass {
    const CONSTANT = &#39;CONSTANT value&#39;;
    function setCONSTANT() {
        self::CONSTANT = &#39;news CONSTANT&#39;; //程序运行结果将会出错。
        
    }
}
echo MyClass::CONSTANT;
?>

程序运行结果将会出错,使用const修饰的常量更其它的常量,有点不同的地方就是:常量名前不要使用”$”,切记!当然这个常量值也是不能修改的,一旦定义就不能程序的任何地方进行“人为”的修改,这跟使用 define定义是一样,还有就是使用const来定义当然也遵守其它常量的命名规则.

扩展阅读:

常量前面没有美元符号($);

常量只能用 define() 函数定义,而不能通过赋值语句;

常量可以不用理会变量范围的规则而在任何地方定义和访问;

常量一旦定义就不能被重新定义或者取消定义;

常量的值只能是标量;

常量只能包含标量数据(boolean,integer,float 和 string),不要定义 resource常量.

可以用函数 constant() 来读取常量的值.get_defined_constants()可以获得所有已定义的常量列表.

如果使用了一个未定义的常量,PHP 假定想要的是该常量本身的名字,如同用字符串调用它一样(CONSTANT 对应 “CONSTANT”),此时将发出一个 E_NOTICE 级的错误.

PHP 的“魔术常量”

名称

说明

__LINE__

文件中的当前行号。

__FILE__

文件的完整路径和文件名。如果用在包含文件中,则返回包含文件名。自 PHP 4.0.2 起,__FILE__ 总是包含一个绝对路径,而在此之前的版本有时会包含一个相对路径。

__FUNCTION__

函数名称(PHP 4.3.0 新加)。自 PHP 5 起本常量返回该函数被定义时的名字(区分大小写)。在 PHP 4 中该值总是小写字母的。

__CLASS__

类的名称(PHP 4.3.0 新加)。自 PHP 5 起本常量返回该类被定义时的名字(区分大小写)。在 PHP 4 中该值总是小写字母的。

__METHOD__

类的方法名(PHP 5.0.0 新加)。返回该方法被定义时的名字(区分大小写)。


               
               

本文地址:

转载随意,但请附上文章地址:-)

陳述
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

AI Hentai Generator

AI Hentai Generator

免費產生 AI 無盡。

熱門文章

R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
1 個月前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳圖形設置
1 個月前By尊渡假赌尊渡假赌尊渡假赌
威爾R.E.P.O.有交叉遊戲嗎?
1 個月前By尊渡假赌尊渡假赌尊渡假赌

熱工具

PhpStorm Mac 版本

PhpStorm Mac 版本

最新(2018.2.1 )專業的PHP整合開發工具

SAP NetWeaver Server Adapter for Eclipse

SAP NetWeaver Server Adapter for Eclipse

將Eclipse與SAP NetWeaver應用伺服器整合。

SublimeText3 英文版

SublimeText3 英文版

推薦:為Win版本,支援程式碼提示!

Atom編輯器mac版下載

Atom編輯器mac版下載

最受歡迎的的開源編輯器

Dreamweaver Mac版

Dreamweaver Mac版

視覺化網頁開發工具