Форум → Программирование → PHP для идиотов → Расширения PHP → Smarty и кто его использует
Smarty и кто его использует
-
Я и раньше знал про Smarty, но использовать начал только с сегоднешнего дня.
Вот просто интересно стало… если это действительно такая мега-супер-штука, почему её не используют в популярных приложениях, типа там drupal, mediawiki или joomla?
И вообще что я теряю от её использования кроме пары Кб на жестком диске? -
Фев. 23, 2008, 10:02 п.п., спустя 7 минут 5 секунд
что я теряю
время, потраченное на загрузку страницы
смарти дейтвительно тормоз, но для большинства стандартных, ненагруженных проектов пойдётвсе умрут, а я изумруд -
Фев. 23, 2008, 10:07 п.п., спустя 4 минуты 57 секунд
Смарти — навороченный, неповоротливый монстр, убивающий всякую гибкость. Впрочем, для несложных проектов и неразбирающихся в программировании подойдет.
Да, и друпал с жумлой тоже навороченные и неповоротливые монстры. -
Фев. 24, 2008, 2:54 д.п., спустя 4 часа 47 минут 50 секунд
А что посоветуете использовать? Или писать свой шаблонизатор под конкретный проект (имеется в виду если проект более-менее большой и нагруженный)? -
Фев. 24, 2008, 8:10 д.п., спустя 5 часов 15 минут 36 секунд
мб нативные шаблоны?все умрут, а я изумруд -
Фев. 24, 2008, 9:37 д.п., спустя 1 час 26 минут 42 секунды
А что посоветуете использовать? Или писать свой шаблонизатор под конкретный проект (имеется в виду если проект более-менее большой и нагруженный)?
Blitz -
Фев. 24, 2008, 1:48 п.п., спустя 4 часа 10 минут 57 секунд
Спасибо, почитал :) Склоняюсь к нативным шаблонам. -
Фев. 24, 2008, 2:30 п.п., спустя 42 минуты 11 секунд
Насчёт его тормознутости… а как же "компилируемый код"? Ведь как я понимаю он переделывает свои шаблоны в нативный PHP-код и после первого раза отображает только их, нет? -
Фев. 24, 2008, 3:50 п.п., спустя 1 час 19 минут 54 секунды
Я не буду, тебя отговаривать.
Склоняюсь к нативным шаблонам.
Предлагаю только задуматься, над простым вопросом. Рассмотрим банальный сайт, который состоит из шапки, контентной области и футера. В контентной области у нас может быть что угодно, но один из случаев - у нас там появляются статьи, которую мы берем из базы данных. Все банально, не так ли?
Соответственно три нативных шаблона:
head.php
article.php
footer.php
Центральный скрипт сайта имеет код:
include('templates/head.php');
if (мы находимся в разделе статья)
{
$article = Извлекаем из БД заголовок и текст статьи;
include('templates/article.php');
}
else
{
обрабатываем разделы сайта с другой логикой
}
include('templates/footer.php');
Все, красиво, только не плохо бы сформировать еще <title> с заголовком статьи, который увы … оказался в шаблоне head.php.
Твой подход, при использовании нативных шаблонов? -
Фев. 24, 2008, 4:04 п.п., спустя 14 минут 23 секунды
так а сначала надо бы все данные сформировать, а только потом инклюдить шаблон…все умрут, а я изумруд -
-
Фев. 24, 2008, 4:20 п.п., спустя 10 минут 28 секунд
че сразу код )
шаблон-то
header.php
<title><?php if (isset($tpl['title'])) print $tpl['title']; else print 'стандартный тайтл'; ?></title>
вот мы и формируем сначало массив $tpl (или объект… кому как)
а потом подключаем шаблонвсе умрут, а я изумруд -
Фев. 24, 2008, 5:08 п.п., спустя 48 минут 44 секунды
header.php
Угу … header.php уже вырос из банального
<title><?= $title ?></title>
в достаточно сложную конструкцию.
вот мы и формируем сначало массив $tpl (или объект… кому как)
а потом подключаем шаблон
Все-таки хотелось бы понять, как будет выглядеть код центрального скрипта.
Нет, друзья, вы поймите меня правильно. Я не то чтобы хочу сказать, что нативные шаблоны - это однозначно плохо. Иногда это очень хорошо. Но прежде чем принять решения, все-таки стоит продумать базовую архитектруру приложения. -
Фев. 24, 2008, 5:16 п.п., спустя 7 минут 50 секунд
центральный скрипт анализирует урл и то, что ему надо сделать, делает это, собирает данные в $TPL а потом подключает шаблон, в котором этот $TPL и используется.
у меня так работает 2 сайта и очень хорошо, я даже не представляю, что бы было на смарти ) а блитца нету возможности пока поставить
а что базовая архитектура.. mvc он и есть, обрабатываем урл, собираем выходные данные и передаём во вьюха, где они разукрашиваютсявсе умрут, а я изумруд -
Фев. 24, 2008, 5:17 п.п., спустя 59 секунд
Угу … header.php уже вырос из банального
<title><?= $title ?></title>
в достаточно сложную конструкцию.
AlexB, ну давай на примере, чтоли…все умрут, а я изумруд
Пожалуйста, авторизуйтесь, чтобы написать комментарий!