Smarty (так же, как и другие сторонние шаблоны) - одна из возможных реализаций части View MVC.Вам не нужно его использовать, хотя вы можете, если хотите.
MVC отделяет данные от представления, но не полностью.Если вы не создаете полностью статический html, вам нужно будет поместить некоторые динамически сгенерированные данные в ваш шаблон.Идея заключается в том, что ваш контроллер вычисляет эти данные и помещает их в одну или несколько переменных PHP, которые затем используются вашим шаблоном.
Допустим, вы хотите поприветствовать пользователя, чье имя вы откуда-то выбрали (база данных, сеанс и т. Д.).Ваш контроллер выполнит свою задачу и, наконец, передаст имя пользователя вашему представлению:
$view->set('name', 'Bob');
$ представление - это объект, представляющий ваше представление.Реализовано ли это с помощью Smarty, vanilla PHP или какой-либо другой системы шаблонов, на данном этапе не имеет значения.Синтаксис может отличаться, но логика та же.
На этом этапе вы хотите, чтобы ваш шаблон использовал эту переменную.Как это будет сделано, зависит от того, как работает ваш View.В простом PHP вы можете использовать $ view для внутреннего выполнения следующих действий:
$name='Bob';
, и ваш шаблон получит следующее:
Hello <?php echo $name ?>. Welcome back.
Или вы можете использовать Smarty, в этом случае ваш шаблонбудет выглядеть так:
Hello {$name}. Welcome back.
Логика та же, реализация меняется.
Наконец, если вы решите, следует ли использовать Smarty в вашем View, я личнорекомендую против этого, поскольку он не делает ничего, чего не может сделать обычный PHP, что фактически делает его лишним багажом.Это еще одна вещь, о которой нужно беспокоиться, не говоря уже о том, что вам нужно убедиться, что она установлена на каждом сервере, на котором должно работать ваше приложение.