public,private和protected稱為存取修飾符。就像C 一樣,PHP也有三個存取修飾符,如public,private和protected。可以透過在聲明前加上這些關鍵字來定義屬性,方法或常數的可見性。
1.如果類別成員宣告為public,那麼它可以在任何地方存取。
2.如果類別成員宣告為protected,則只能在類別本身內以及繼承和父類別中存取它。
3.如果類別成員宣告為private,則它只能由定義該成員的類別存取。
public:此修飾符在內部和外部都可以使用。
範例:
<?php class pub { public $tag_line = "PHP中文网!"; function display() { echo $this->tag_line."<br/>"; } } class child extends pub { function show(){ echo $this->tag_line; } } $obj= new child; echo $obj->tag_line."<br/>"; $obj->display(); $obj->show();
輸出:
PHP中文网! PHP中文网! PHP中文网!
#protected:此修飾符可在其定義的類別及其父類別或繼承類別中使用。
範例:
<?php class pro { protected $x = 500; protected $y = 500; function sub() { echo $sum=$this->x-$this->y . "<br/>"; } } class child extends pro { function mul() { echo $sub=$this->x*$this->y; } } $obj= new child; $obj->sub(); $obj->mul(); ?>
輸出:
0 250000
#private:此修飾符可在定義它的類別中使用。 (它不能在類別外部存取意味著繼承類別)。
範例:
<?php class demo { private $name="PHP中文网"; private function show() { echo "这是基(父)类的私有方法"; } } class child extends demo { function display() { echo $this->name; } } $obj= new child; $obj->show(); $obj->display();
輸出:如圖顯示錯誤,因為無法在類別外存取私有類別資料。
相關推薦:《PHP教學》http://www.php.cn/course/list/29.html
本篇文章是關於PHP中的public,private和protected的區別介紹,希望對需要的朋友有幫助!
以上是PHP中的public,private和protected的差別的詳細內容。更多資訊請關注PHP中文網其他相關文章!