Шаблон PHP-наблюдателя / магический сеттер / проксирование - PullRequest
0 голосов
/ 07 февраля 2011

Я ищу способ отслеживать, когда переменная в моем классе установлена.

Например, если у меня есть следующий класс:

class MyClass  {
    public $myVariable;
} 

И где-то в моем коде я делаю:

$class = new MyClass();
$class->myVariable = "value";

Я бы хотел иметь возможность "подключиться" к установщику myVariable. Поэтому, когда я вызываю $ class-> myVariable = "Value"; запускается фильтр, который проверяет, равняется ли новое значение «Значение», и, если это так, выдает исключение.

1 Ответ

2 голосов
/ 07 февраля 2011

определите свой атрибут как частный или защищенный, как обычно.

Затем используйте магический метод __set () , чтобы поймать доступ.

С наилучшими пожеланиями

Раффаэль

...