Вы можете использовать мутаторы и методы доступа, чтобы реализовать дополнительное поведение для полей ваших моделей. В основном они преобразовывают значение из одной формы в другую. Например, если вы посмотрите на документы Doctrine, они указывают мутатор md5Password. Mutator означает, что Doctrine будет вызывать указанный метод мутатора всякий раз, когда вы устанавливаете значение для поля. Поэтому всякий раз, когда вы делаете:
$user->password = 'foobar';
Doctrine будет вызывать md5Password () модели, следовательно, преобразуя 'foobar' в md5 ('foobar'). В двух словах, это гарантирует, что пароль всегда хешируется на уровне программного обеспечения.
Accessor является противоположностью мутатора; он вызывается, когда поле читается, а не устанавливается (например, когда строка читается из базы данных).