Установка Smarty
Установка Smarty
Для установки smarty нам потребуется веб сервер с РНР4 или более современной версией(скорее всего это будет РНР5).
Заходим на www.smarty.net и оттуда скачиваем последний релиз. В архиве мы види каталоги demo и libs и кучу файлов с полезной информацией:)
Распаковываем папку libs в любое удобное место(можно в корень)
Создаем на веб-сервере(в корне) каталоги: cache, templates, templates_c и conf.
И каталогам cache и templates_c присваиваем права доступа 777(chmod 777 cache итд...)
Теперь в каталоге conf создаем конфиг(config.php) для Smarty который подключаем в начале нашего index.php
config.php
// Сначала объявляем константу SMARTY_DIR - путь к классу SMARTY define('SMARTY_DIR','libs/'); require_once(''.SMARTY_DIR.'/Smarty.class.php'); $smarty = new Smarty; $smarty->template_dir = './templates/'; $smarty->compile_dir = './templates_c/'; $smarty->cache_dir = './cache/'; $smarty->caching=true;
В корне создаем index.php со следующим кодом:
// Включаем наш конфиг require_once('conf/config.php'); $smarty->assign('VREMYA','12:00 сейчас полдень'); //Присваиваем переменной VREMYA значение $smarty->display('first.tpl.htm');
А в папке templates создаем тестовый темплейт first.tpl.htm следующего содержания:
Время
( ! ) Notice: Undefined index: VREMYA in /var/www/user20658/data/www/allpro.com.ua/wa-cache/apps/site/templates/compiled/site_ru_RU/60/8a/d9/608ad9045d390eed45a1898a884b4ffee646c330.string.php on line 56 Call Stack # Time Memory Function Location 1 0.0004 401144 {main}( ) .../index.php:0 2 0.0081 1100288 waSystem->dispatch( ) .../index.php:7 3 0.0082 1100328 waSystem->dispatchFrontend( ) .../waSystem.class.php:615 4 0.0409 4384520 waFrontController->dispatch( ) .../waSystem.class.php:941 5 0.0410 4384632 waFrontController->execute( ) .../waFrontController.class.php:84 6 0.0420 4458072 waFrontController->runController( ) .../waFrontController.class.php:190 7 0.0420 4458072 siteFrontendController->run( ) .../waFrontController.class.php:263 8 0.0420 4458072 siteFrontendController->run( ) .../waViewController.class.php:46 9 0.0421 4458072 siteFrontendController->execute( ) .../waController.class.php:21 10 0.0556 5671552 siteFrontendController->executeAction( ) .../siteFrontend.controller.php:12 11 0.0557 5671552 siteFrontendAction->display( ) .../waViewController.class.php:86 12 0.0557 5671552 siteFrontendAction->display( ) .../siteFrontend.action.php:78 13 0.0557 5671552 siteFrontendAction->display( ) .../waPage.action.php:108 14 0.0557 5671552 siteFrontendAction->execute( ) .../waViewAction.class.php:161 15 0.0641 6444328 siteFrontendAction->renderPage( ) .../siteFrontend.action.php:18 16 0.0641 6447400 waSmarty3View->fetch( ) .../waPage.action.php:90 17 0.0646 6448904 Smarty->fetch( ) .../waSmarty3View.class.php:144 18 0.0655 6503496 content_5e583ded5b8165_00733052( ) .../smarty_internal_templatebase.php:186
( ! ) Notice: Trying to get property 'value' of non-object in /var/www/user20658/data/www/allpro.com.ua/wa-cache/apps/site/templates/compiled/site_ru_RU/60/8a/d9/608ad9045d390eed45a1898a884b4ffee646c330.string.php on line 56 Call Stack # Time Memory Function Location 1 0.0004 401144 {main}( ) .../index.php:0 2 0.0081 1100288 waSystem->dispatch( ) .../index.php:7 3 0.0082 1100328 waSystem->dispatchFrontend( ) .../waSystem.class.php:615 4 0.0409 4384520 waFrontController->dispatch( ) .../waSystem.class.php:941 5 0.0410 4384632 waFrontController->execute( ) .../waFrontController.class.php:84 6 0.0420 4458072 waFrontController->runController( ) .../waFrontController.class.php:190 7 0.0420 4458072 siteFrontendController->run( ) .../waFrontController.class.php:263 8 0.0420 4458072 siteFrontendController->run( ) .../waViewController.class.php:46 9 0.0421 4458072 siteFrontendController->execute( ) .../waController.class.php:21 10 0.0556 5671552 siteFrontendController->executeAction( ) .../siteFrontend.controller.php:12 11 0.0557 5671552 siteFrontendAction->display( ) .../waViewController.class.php:86 12 0.0557 5671552 siteFrontendAction->display( ) .../siteFrontend.action.php:78 13 0.0557 5671552 siteFrontendAction->display( ) .../waPage.action.php:108 14 0.0557 5671552 siteFrontendAction->execute( ) .../waViewAction.class.php:161 15 0.0641 6444328 siteFrontendAction->renderPage( ) .../siteFrontend.action.php:18 16 0.0641 6447400 waSmarty3View->fetch( ) .../waPage.action.php:90 17 0.0646 6448904 Smarty->fetch( ) .../waSmarty3View.class.php:144 18 0.0655 6503496 content_5e583ded5b8165_00733052( ) .../smarty_internal_templatebase.php:186
Вот вобщемто и все осталось только проверить:
http://site_name/index.php
в браузере мы должны увидеть:
Время 12:00 сейчас полдень