Форум → Программирование → PHP для идиотов → Снова парсер шаблонов
Снова парсер шаблонов
-
24 февраля 2009 г. 1:50, спустя 1 минуту 51 секунду
да забей. пользователи все-равно не знают что у нас там внутре
(сперто с хабра)ιιlllιlllι унц-унц -
24 февраля 2009 г. 2:17, спустя 27 минут 43 секунды
artoodetoo,https://smappi.org/ - платформа по созданию API на все случаи жизни -
-
-
24 февраля 2009 г. 2:28, спустя 2 минуты 49 секунд
видел месяца 2 назад
хабр отстой!
откуда знаешь что оттуда?)Сапожник без сапог -
4 марта 2009 г. 16:11, спустя 8 дней 13 часов 43 минуты
просто чтобы был happy end по теме "парсер шаблонов":
финальная версия умеет:- эскейпить html-теги в выводе
- выбирать элемент массива любой размерности
- include под-шаблон
- if-else
- foreach
пример шаблона:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en" dir="ltr">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>{title}</title>
</head>
<body>
{%INCLUDE header}
<p>Code: {code}</p>
<p>Escaped code: {@code}</p>
<hr />
{%IF cond}
<p>Condition: true<br />
Foo: <strong>{foo}</strong></p>
{ %IF link}
<p>Link: <a href="xxx.php?id={link:id}">{@link:name}</a></p>
{ %ELSE}
<p>Link isn't set</p>
{ %END}
{%ELSE}
<p>Condition: false</p>
{%END}
<hr />
<p><strong>Array:</strong></p>
{%IF items}
{ %FOREACH items AS item}
<p>{item:a} » {item:b}</p>
{ %END}
{%ELSE}
<p>Array is not set or empty</p>
{%END}
</body>
</html>
пример использования (без БД):
<?php
error_reporting(E_ALL);
include './a2temple.php';
$linkArr = array('id' => 1, 'name' => 'john');
$loopArr = array(
array('a' => '1', 'b' => '1'),
array('a' => '2', 'b' => '4'),
array('a' => '3', 'b' => '9'),
array('a' => '4', 'b' => '16')
);
$data = array(
'title' => 'The Example page',
'code' => 'The <b>bold</b> text',
'cond' => TRUE,
'foo' => 'bar',
'link' => &$linkArr,
'items' => &$loopArr
);
echo parseTemplate($data, './template/first.tpl');
парсер ~ 150 строк, 4K
не за что!ιιlllιlllι унц-унц -
-
5 марта 2009 г. 1:54, спустя 4 минуты 22 секунды
присоединяюсь к молчанию!
Молчу, молчу, молчу … (с) Поручик Ржевскийвсе умрут, а я изумруд -
-
5 марта 2009 г. 2:20, спустя 6 минут 13 секунд
синтакс РИАЛЬНЕ ЖОСТЬ
какие вы все молодцы!
для себя смысла в использовании не вижу. проститевсе умрут, а я изумруд -
-
5 марта 2009 г. 3:02, спустя 37 минут 59 секунд
Да дело не синтаксисе, в конце концов ситаксис сменить несложно ….
синтакс РИАЛЬНЕ ЖОСТЬ -
5 марта 2009 г. 3:04, спустя 1 минуту 48 секунд
AlexB, не сдерживай себя, это вредноιιlllιlllι унц-унц -
5 марта 2009 г. 3:08, спустя 3 минуты 57 секунд
да я и не говорю, что только в синтаксисе
Да дело не синтаксисе, в конце концов ситаксис сменить несложно ….
синтакс РИАЛЬНЕ ЖОСТЬвсе умрут, а я изумруд -
5 марта 2009 г. 3:09, спустя 1 минуту 20 секунд
Что делать, приходится жертвовать собой ради мира на земле.
AlexB, не сдерживай себя, это вредно
Пожалуйста, авторизуйтесь, чтобы написать комментарий!