Описание переменных используемых в шаблоне

Стоит ли описывать переменные используемые в шаблоне?
Например есть такой шаблон(view.php):

<h1>Hello, <?=$user?>!</h1>


Сейчас делаю что-то вроде этого:

$view = new View('view.php');
$view->assign('user', $user->name);
echo $view->render();


Стоит ли для каждого шаблона создавать что-то вроде этого с описанием его переменных:

class SomePage extends View
{
    /**
     * Current user name.
     * @var string
     */
    public $user;
}

$view = SomePage();
$view->user = $user->name;
echo $view->render();
  • Вопрос задан
  • 2571 просмотр
Решения вопроса 1
@LastDragon
Мое мнение: если планируется дальнейшее развитие и/или кодирование/верстка будет выполняться сторонними людьми — стоит. Если пишите только для себя — как вам удобнее, но при указании свойств появляется возможность использовать автокомлит в шаблонах, что избавляет от необходимости постоянно смотреть в код.

Создавать свойства, кстати, не обязательно, можно использовать @property:
/**
 * @property string user
 */
class SomePage extends View {
}
Ответ написан
Пригласить эксперта
Ответы на вопрос 5
AndreDerMorgenstern
@AndreDerMorgenstern
Я думаю, нельзя однозначно ответить на этот вопрос. Я бы не стал так делать: подобное правило многократно увеличило бы количество кода, но явной выгоды не дало бы.
Ответ написан
Комментировать
Я знаю, что это вы не спрашивали, и что будет очень сложно переходить на Smarty, но всётаки, используйте Smarty, меньше грешить будете. www.smarty.net/
Ответ написан
Mendel
@Mendel
PHP-developer
Скажу по собственному опыту — когда берешь собственный код который ты несколько лет не видел, то иногда при плохой комментируемости проще переписать заново :)
Конечно с ростом профессионализма код становится все более читабельным, но мое скромное мнение — описание должно быть всегда. Тем более что часто из одного названия переменной не всегда можно понять что она означает. Умолчания у всех людей разные.
Ответ написан
Dennion
@Dennion
Разработчик PHPShop CMS.
Описывать переменные в шаблонизаторе нужно, я даже для таких целей в своем велосипеде сделал IDE для шаблонизатора. Удобно, наглядно показывает переменные и описания, в некоторых местах можно даже их подвигать. Все описалово подключается из внешнего XML файла, так что можно легко добавлять новые, не залезая в код IDE. Из минусов IDE — пока работает только в форточках.
Ответ написан
Комментировать
neyronius
@neyronius
Так делать удобно, кроме того в таких классах можно описать некоторую логику отображения в виде функций.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы