Heim  >  Artikel  >  Backend-Entwicklung  >  So verwalten Sie die Eigenschaften von Objekten in PHP

So verwalten Sie die Eigenschaften von Objekten in PHP

怪我咯
怪我咯Original
2017-06-28 13:58:375956Durchsuche

In Java müssen wir die Attribute kapseln, was auch eine der Haupteigenschaften von objektorientiert ist. Nachdem wir die Attribute in Java gekapselt haben, können wir jedes einzelne kapseln Attribut in Java wird mit Set- und Get-Methoden festgelegt, sodass auf die Attribute zugegriffen werden kann. In PHP ist es jedoch nicht erforderlich, alle Objekte festzulegen Eine get() set() Magic-Methode bietet uns wie folgt einfachen Zugriff auf private Attribute:

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;
}
}

Beachten Sie die folgenden Punkte:

Nachdem wir gekapselt haben die Klassenattribute, wenn wir die Attribute festlegen. Wenn es privat ist, dann direkt: Objekt -> Auf das Attribut kann nicht zugegriffen werden. Wir müssen die Methode get() hinzufügen, um darauf zuzugreifen

Wenn unser Attribut auf gesetzt ist privat können wir direkt: Object - >Attribute=value, das ebenfalls nicht festgelegt werden kann. Wir müssen auch die Methode _set() hinzufügen, um darauf zuzugreifen.

Umsetzung:

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

Das obige ist der detaillierte Inhalt vonSo verwalten Sie die Eigenschaften von Objekten in PHP. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn