本篇文章給大家分享的是有關(guān)static和const關(guān)鍵字如何在php中使用,小編覺得挺實(shí)用的,因此分享給大家學(xué)習(xí),希望大家閱讀完這篇文章后可以有所收獲,話不多說(shuō),跟著小編一起來(lái)看看吧。

static關(guān)鍵字在類中描述的成員屬性和成員函數(shù)都是靜態(tài)的。
static成員能限制外部的訪問(wèn),因?yàn)閟tatic成員是屬于類的,而不是屬于任何對(duì)象實(shí)例。
從內(nèi)存的角度講,其中對(duì)象是放在“堆內(nèi)存”中,對(duì)象的引用是放在“棧內(nèi)存”中,而靜態(tài)成員被放在初始化靜態(tài)段中,在類的第一次加載的時(shí)候加入的。可以讓對(duì)內(nèi)存中的所有對(duì)象所共享。如下圖所示:

<?php
class Person{
public static $myCountry = "中國(guó)";
public static function say(){
echo "我的祖國(guó)是:".self::$myCountry."<br>";
}
}
//輸出靜態(tài)屬性
echo Person::$myCountry."<br>";
//調(diào)用靜態(tài)方法
Person::say();
//修改靜態(tài)屬性
Person::$myCountry = "中國(guó)-江蘇";
echo Person::$myCountry."<br>";
?>輸出結(jié)果為:
中國(guó) 我的祖國(guó)是:中國(guó) 中國(guó)-江蘇
類中的靜態(tài)方法只能訪問(wèn)類的靜態(tài)的屬性。類中的靜態(tài)的方法是不能訪問(wèn)類的非靜態(tài)的成員的。我們用self來(lái)訪問(wèn)類中的靜態(tài)屬性。self與this相似,只不過(guò)self代表靜態(tài)方法所在的類,this相似,只不過(guò)self代表靜態(tài)方法所在的類,this引用指針,代表調(diào)用此方法的對(duì)象。靜態(tài)方法是不用對(duì)象調(diào)用的,所有就沒有this這個(gè)引用了。沒有this這個(gè)引用了。沒有this,就沒辦法調(diào)用類中的其他的成員屬性。
const是一個(gè)定義常量的關(guān)鍵字。在類里面常用const來(lái)定義常量。用“const”修飾的成員屬性的訪問(wèn)方式和“static”修飾的成員訪問(wèn)的方式差不多,也是使用“類名”,在方法里面使用“self”關(guān)鍵字。但是不用使用“$”符號(hào),也不能使用對(duì)象來(lái)訪問(wèn)。
<?php
class MyClass{
const constant = 'constant value';
function showConstant(){
//方法中調(diào)用常量,沒有$
echo self::constant."<br>";
}
}
//類直接調(diào)用,沒有$
echo MyClass::constant."<br>";
$class = new MyClass();
$class ->showConstant();
?>以上就是static和const關(guān)鍵字如何在php中使用,小編相信有部分知識(shí)點(diǎn)可能是我們?nèi)粘9ぷ鲿?huì)見到或用到的。希望你能通過(guò)這篇文章學(xué)到更多知識(shí)。更多詳情敬請(qǐng)關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。
網(wǎng)頁(yè)標(biāo)題:static和const關(guān)鍵字如何在php中使用-創(chuàng)新互聯(lián)
鏈接地址:http://chinadenli.net/article20/dhogjo.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供企業(yè)網(wǎng)站制作、網(wǎng)站收錄、品牌網(wǎng)站設(shè)計(jì)、Google、品牌網(wǎng)站建設(shè)、云服務(wù)器
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容