您好,登錄后才能下訂單哦!
這篇文章主要為大家展示了“php常量和靜態變量的區別有哪些”,內容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領大家一起研究并學習一下“php常量和靜態變量的區別有哪些”這篇文章吧。
php中常量和靜態變量的區別:1、常量都是不可變的量,而靜態變量可以通過self來賦值改變;2、在編譯效率上,常量的編譯過程較快,而靜態變量的編譯過程較慢。
本教程操作環境:windows10系統、PHP7.1版、DELL G3電腦
在效率上:常量編譯過程比靜態變量快的多。
代碼:
<?php error_reporting(E_ALL); class A { const c = 9; public static $b = 5; public function setst ($ca) { self::$b = $ca; } } $obj = new A; echo $obj->c;//出錯,是類的屬性,不是對象的屬性 echo $obj->$b;//出錯,是類的屬性,不是對象的屬性 echo $obj::c;//ok, echo A::c;//ok echo $obj::$b;//ok echo A::$b;//ok $obj->setst(100);//更改靜態變量的值 echo $obj::$b;//更改成功 ?>
結論:
實例的屬性才可以用 $obj->c 這種方式訪問。
靜態變量和常量都是類的屬性,類的屬性都用雙冒號訪問(::),通過對象或者類名都可以訪問。
常量是不可變的,靜態變量可以通過self來賦值改變。
const常量:類的不變屬性
static變量:類的可變屬性
以上是“php常量和靜態變量的區別有哪些”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。