Smarty для початківців, озимий блог
Коротко про те, для чого потрібен Smarty:
Smarty допомагає відокремити програмний php код від html коду, виділяючи останній в окремі файли. Не всім подобається такий підхід, кому більше до душі перемішати в купу php і html і потім цілодобово сидіти і шукати де що. Мені більше подобається Smarty, так як одноразово написавши php код я можу його більше не чіпати, а якщо мені знадобитися що-небудь змінити в ньому я легко це зроблю, так як крім php коду у файлі нічого немає, за великим рахунком, ми розбиваємо на два файлу то, що було в одному, і це дуже допомагає уникнути хаосу, це я знаю з особистого досвіду, так як раніше Smarty не використав.
Smarty - це шаблонизатор. З його допомогою ми створюємо набір html файлів, які при проходженні через компілятор Smarty створюють php файли - тобто, Smarty робить за нас брудну роботу, створюючи ті самі файли, в яких змішаний в купу php і html код, фактично, Smarty та використовує тільки ці php файли для побудови сторінок
Отже, для початку роботи Smarty нам потрібно завантажити бібліотеку Smarty. покладіть її в окрему папочку, наприклад, libs, в результаті ми отримаємо шлях до бібліотеки libs / smarty.
Наступним кроком створимо php скрипт ініціалізації Smarty такого змісту.
Зверніть увагу, вам потрібно буде створити папки
$ Smarty-> template_dir = './templates/mytemplate/';
$ Smarty-> compile_dir = './templates/mytemplate/compile/';
$ Smarty-> cache_dir = './templates/mytemplate/cache/';
і власне в папці mytemplate ми будемо створювати файли шаблонізатора (* .tpl).
ЗИ: назва папки може бути будь-який.
ВАЖЛИВО! на папку compile потрібно встановлювати права 777.
Назвемо цей файл init.php. Далі ми будемо підключати його у всіх файлах, в яких буде задіяний Smarty.
Наступний крок - створення php скрипта з прикладом роботи Smarty
Далі нам потрібно створити, власне, файл шаблону page.tpl, з html кодом і змінними Smarty
Тепер переходимо на наш скрипт, і отримуємо висновок значення змінної, визначеної в php файлі.
Для зручності я розбиваю html на три частини: хедер, футер і центр. Відповідно, при визначенні подгрузки шаблонів виходить приблизно такий запис
Це здорово економить час, так як ці частини постійно повторюються у всьому сайті, і немає сенсу повторювати їх у кожному файлі шаблону.
Це був простий висновок значення змінної, але що робити коли у нас є цикли?
Наступний приклад показує як Smarty працює з циклами
вважаю, тут все зрозуміло: в шаблоні ми робимо перебір масиву, і виводимо дані з масиву.
знову ж таки - економія часу і місця.
Бажаю удачі в освоєнні Smarty! =)