首頁 > 後端開發 > php教程 > php中存取修飾符的介紹(程式碼範例)

php中存取修飾符的介紹(程式碼範例)

不言
發布: 2023-04-04 20:58:01
原創
3997 人瀏覽過

在變數和函數前面protected稱為存取修飾符,透過附加存取修飾符,您可以設定存取函數的權限(存取權限),這篇文章我們就來介紹一下關於php中存取修飾符的用法。

php中存取修飾符的介紹(程式碼範例)

為什麼需要存取權限?

防止覆蓋變數名稱和函數名稱

我們下來看public的使用,public是可以從任何地方存取的最廣泛的存取限定符。

假設A先生開發overlapFuncBase,B先生繼承overlapFuncBase創建了overlapFunc的例子。

<?php
class  overlapFuncBase {
    public $s = 1;
}
class overlapFunc extends overlapFuncBase { 
    public $s = 2;
}
$obj_overlap = new overlapFunc();
var_dump($obj_overlap);
登入後複製

結果

object(overlapFunc)#1 (1) {
    ["s":"overlapFunc":public] => int(2)
}
登入後複製

在B overlapFunc中,我可以使用由A先生創建的overlapFuncBase,但由於變數名稱$ s是相同的,覆蓋了它。

所以這時就需要存取修飾符。

<?php
class  overlapFuncBase {
    private $s = 1;
}
class overlapFunc extends overlapFuncBase { 
    private $s = 2;
}
$obj_overlap = new overlapFunc();
var_dump($obj_overlap)
登入後複製

結果   

object(overlapFunc)#1 (2) {
    ["s":"overlapFunc":private] => int(2)
    ["s":"overlapFuncBase":private] => int(1)
}
登入後複製

與第一個程式碼的不同之處在於我們在變數$ s之前將存取修飾符public改為private。

private表示你只能在自己的類別中存取。

因此,即使是A創建的每個類別都有相同變數名,現在也可以獲得不同的結果。

存取修飾符的型別

存取修飾符有private、protected和public

對應範圍以下列順序增加

private → protected → public

還有另一個名為static的特殊存取修飾符,如果你指定了類別名,你可以在任何地方使用它。

這篇文章到這裡就全部結束了,更多精彩內容大家可以追蹤php中文網的相關專欄教學! ! !

以上是php中存取修飾符的介紹(程式碼範例)的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
php
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板