# reaper (27.07.2014 / 23:39)Нужно правильно писать шаблоны и шаблонизаторы.
Мне например не нравится, когда IDE постоянно ругается на не определенные переменные или ссылается на какие-то левые, которые определены черт знает где, только не там, где нужно.
Большинство сразу же кидаются использовать функцию extract(), в шаблонах лепят простые переменные $var и соответственно, IDE будет ругаться (и правильно делает).
Вместо этого, в шаблонизаторе надо использовать магический метод __get() (или offsetGet в случае ArrayObject), который в случае отсутствия запрашиваемой переменной выдает FALSE.
В шаблонах используешь $this->var
Зато как плюс - у тебя не будет неинициализированных переменных, ЛЮБАЯ получит свое значение (в крайнем случае FALSE). Так намного удобнее, выкинь ты этот extract()