Духовность™
Продвинутый новичок
как вызывать в классах-контроллерах свойства класса?
Вопрос из разряда "как писать красиво", хотя вопрос и не лишён практической основы.
Пример.
Есть класс-контроллер. У него есть свойство, не важно какое, но в данном случае - request, обозначающее объект запроса. Получается оно соответственно так:
Т.е. это свойство постоянно используется, оно - рабочий инструмент фреймворка.
Вопрос: стоит ли его получат в самом классе контроллера через get-метод, типа как
?
Почему собственно спрашиваю. У меня так же в контроллере есть метод getCurrentUser() возвращающий объект текущего пользователя - я всегда получаю объект пользователя через метод, а не через свойство, т.к.в методе инкапсулирована логика:
Боюсь, что в один прекрасный день потребуется, например, изменить имя свойства класса request или делать какую-то логику перед получением объекта запроса. Тогда, очевидно, придется исправлять вызовы свойства напрямую на вызовы через get-метод.
Какие ещё за и против?
Вопрос из разряда "как писать красиво", хотя вопрос и не лишён практической основы.
Пример.
Есть класс-контроллер. У него есть свойство, не важно какое, но в данном случае - request, обозначающее объект запроса. Получается оно соответственно так:
PHP:
$this->request->getCookie()->var
Вопрос: стоит ли его получат в самом классе контроллера через get-метод, типа как
PHP:
$this->getRequest()->getCookie()->var
Почему собственно спрашиваю. У меня так же в контроллере есть метод getCurrentUser() возвращающий объект текущего пользователя - я всегда получаю объект пользователя через метод, а не через свойство, т.к.в методе инкапсулирована логика:
PHP:
protected function getCurrentUser()
{
if (null === $this->current_user)
{
$this->loadCurrentUser();
}
return $this->current_user;
}
Какие ещё за и против?