Я смотрю документацию Doctrine 2 и Symfony для создания класса модели. Есть несколько фрагментов кода, где в классе используются getProperty и setProperty, и они каким-то образом используются автоматически, когда значение присваивается непосредственно свойству , Это отличается от типичных магических методов get / set, и пример кода, с которым я столкнулся, не реализует никаких пользовательских магических методов, поэтому я считаю, что это где-то обрабатывается Doctrine.
Из того, что я прочитал, Doctrine реализует методы доступа и мутаторы. Возможно, я пропустил пакет при загрузке Pear, или, может быть, я не включил что-то в свой скрипт.
Например:
class User {
public $name;
public function getName()
{
// Do stuff
}
}
$user = new User();
$foo = $user->name; // getName is called
Примечание: я ищу конкретное решение для Доктрины. Я знаю, что это можно каким-то образом сделать с помощью PHP, но я хочу использовать нативные функции Doctrine.
Редактировать: Обновлено, чтобы прояснить, чем это отличается от типичных магических методов get / set, и примечание.