PHP функции и включает в себя для шаблона сайта - PullRequest
2 голосов
/ 24 марта 2010

Какой самый лучший, самый простой и быстрый способ использовать шаблон для страницы. Сейчас я использую функцию для создания своего шаблона для каждой страницы.

$title = "Kick Me";
<?php pageHtmlHeadStart($title)>
    <!-- Were Javascript would go -->
<?php pageHtmlHeadEnd(); guiHeader(); ?>

    Content went here.

<?php guiFooter; ?>

Я использую, чтобы использовать включает в себя ...

<?php include('header.php'); ?>

    Content went here.

<?php include('footer.php') ?>

Я думал об использовании PHP Object, чтобы сделать то же самое. Это будет работать как функции способ сделать это. Я бы создал класс GUI, который имел бы оболочку шаблона и включал в себя несколько сценариев для отображения контента (через echo), который я использую несколько раз снова на другой странице.

Я, вероятно, отвечу на свои вопросы, когда скажу это ... Мне нравится, как в настоящее время это делается с помощью функций. Я просто не знаю, если это плохие привычки кодирования.

Ответы [ 2 ]

4 голосов
/ 24 марта 2010

В контексте шаблонов нет ничего неправильного в использовании операторов include (). Они создают чистый код и облегчают обмен HTML-фрагментами между шаблонами.

Использование методов экземпляра, статических методов или функций для «тегов шаблона» зависит от архитектуры вашей платформы или приложения. Хотя в целом ООП - это действительно хорошая вещь, создание всего объекта не волшебным образом улучшает ваш код.

Сам PHP делает хороший язык шаблонов. Нет необходимости изобретать другой «язык» для шаблонов - и это не так, если вы кэшируете свои проанализированные файлы (как это делает Smarty).

Вы можете попробовать Savant и Smarty шаблонные движки. Я также рекомендую вам изучить различные фреймворки PHP MVC и посмотреть, как там реализованы: Symfony , Kohana .

0 голосов
/ 24 марта 2010

Если вы хотите шаблон, то используйте язык шаблонов. По моему мнению, использование PHP для шаблонов определенно не очень хорошая практика.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...