首頁  >  文章  >  後端開發  >  php 對物件的屬性怎麼操作

php 對物件的屬性怎麼操作

怪我咯
怪我咯原創
2017-06-28 13:58:375971瀏覽

在java中,我們需要對屬性進行封裝,這也是物件導向的一大性質之一,我們在java中對屬性封裝之後,可能會對每個屬性設定set,get方法,這樣才能對屬性進行訪問,在php中,同樣的也是一個道理,但是在php中不用把所有的物件都設置,它預設的有一個get()set()的魔術方法,提供給我們便於存取private的屬性,如下:

class person{
private $name;//这是private类型的属性,我们直接使用对象->属性是访问不到的。我们需要添加魔术方法get()才可以访问
private $age;
private function  get($proname){//get方法是系统调用的,添加此魔术方法之后,我们直接对象->属性名获取值时,系统会自动地调用这个方法,但是我们必须添加参数,以及添加方法体。
return $this->$proname;
}
private function  set($proname,$value){//设置参数,我们需要设置两个参数
echo "set<br>";
$this->$proname=$value;
}
public function  construct($name,$age){
$this->name=$name;
$this->age=$age;
}
}

#注意以下幾點:

我們對類別屬性進行封裝之後,如果設定屬性為private的話,那麼直接:物件->屬性是存取不到的,我們需要加入get()方法才能存取得到

如果我們的屬性設定了private的情況下,我們直接:物件->屬性=值,同樣也是沒辦法設定的, 我們也需要加入_set()方法才能存取得到。

實作:

private function  get($proname){
return $this->$proname;
}
private function  set($proname,$value){
$this->$proname=$value;
}

以上是php 對物件的屬性怎麼操作的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn