Недавно я изучал магические методы, __get
и __set
, и мне было интересно, как на самом деле установить и получить несколько свойств в классе.
Я знаю, что он отлично работает только с одной переменной или массивом, но я не уверен в доступе к нескольким переменным.
Есть ли кто-нибудь, кто мог бы объяснить это мне?
class myMagic2 {
public $data;
public $name;
public $age;
public function __set($item, $value) {
$this->item = $value;
}
public function __get($item){
return $this->item;
}
}
Есть ли способ получить доступ ко всем переменным ($data
, $name
, $age
)?
$this->$item
, а не$this->item
, и все ваши проблемы исчезнут :) также, может быть,property_exists()
в вашем__get/__set
(если я, конечно, понимаю вашу проблему). - person Twisted1919   schedule 17.07.2013