溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

類(lèi)常量如何在php中使用

發(fā)布時(shí)間:2020-12-22 15:00:06 來(lái)源:億速云 閱讀:173 作者:Leah 欄目:開(kāi)發(fā)技術(shù)

這篇文章給大家介紹類(lèi)常量如何在php中使用,內(nèi)容非常詳細(xì),感興趣的小伙伴們可以參考借鑒,希望對(duì)大家能有所幫助。

可以把在類(lèi)中始終保持不變的值定義為常量。在定義和使用常量的時(shí)候不需要使用 $ 符號(hào)。

常量的值必須是一個(gè)定值,不能是變量,類(lèi)屬性,數(shù)學(xué)運(yùn)算的結(jié)果或函數(shù)調(diào)用。

接口(interface)中也可以定義常量。更多示例見(jiàn)文檔中的接口部分。

自 PHP 5.3.0 起,可以用一個(gè)變量來(lái)動(dòng)態(tài)調(diào)用類(lèi)。但該變量的值不能為關(guān)鍵字(如 self,parent 或 static)。

Example #1 定義和使用一個(gè)類(lèi)常量

<?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(yǔ)言,在php中,類(lèi)不能對(duì)某個(gè)屬性變量使用final修飾符。
如果要聲明某個(gè)屬性為常量,可以使用const關(guān)鍵字,并且無(wú)需使用美元符號(hào)作為變量名前綴,也無(wú)需使用訪問(wèn)權(quán)限修飾符。常量意味著雖然可以訪問(wè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());
?>

常量屬性不能使用對(duì)象訪問(wèn),僅能使用類(lèi)訪問(wèn),在類(lèi)本體內(nèi),可以使用“self::常量名”,在類(lèi)本體外可以使用“類(lèi)名::常量名”。

關(guān)于類(lèi)常量如何在php中使用就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,可以學(xué)到更多知識(shí)。如果覺(jué)得文章不錯(cuò),可以把它分享出去讓更多的人看到。

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

php
AI