- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
function tpl_include($filepath) {
global $lang;
global $lang_array;
$tpl_body = file_get_contents($filepath);
$tpl_body = preg_replace('/\{loop \$(.*?)\}\n(.*?)\n\{\/loop\}/i', "\nEOL;\nforeach ($\\1 as \$var=>\$val) echo <<<EOL\n\\2\nEOL;\necho <<<EOL\n", $tpl_body);
$to_eval = "echo <<<EOL\n".$tpl_body."\nEOL;\n";
eval($to_eval);
}
Lure Of Chaos 13.02.2011 21:54 # −1
gegMOPO4 13.02.2011 22:22 # 0
Lure Of Chaos 14.02.2011 00:16 # −1
7ion 14.02.2011 00:20 # 0
Lure Of Chaos 14.02.2011 00:51 # 0
nethak 14.02.2011 08:16 # −2
Так что автор молодец, лучше делай сам, чем искать чтото готовое, плюс, плюс себя нужно развивать, а не учится на других моросявый говнокодах
ZX_Spectrum 14.02.2011 22:47 # +1
Мистер Хэнки 14.02.2011 23:10 # 0
ZX_Spectrum 14.02.2011 23:44 # 0
7ion 16.02.2011 00:02 # 0
ZX_Spectrum 16.02.2011 18:23 # 0
так, как будет лучше в конкретном случае!
вообще я не поклонник парадигмы MVC в веб-разработке.
в целом - можно создать класс, отвечающий за отображение ссылки и передавать ему необходимые параметры, сам шаблон будет хтмл со вставками пхп-тегов, дальше лень писать... если Вы посчитаете, что такой класс не является компонентом "представления" - что ж, это Ваше право, если наличие пхп-тегов в шаблоне вызовет какие-то негативные реакции, то докажите мне, что смарти-теги (и прочих шаблонизаторов) в шаблонах чем-то лучше.
Меня сильно удивляет, когда люди считают, что используя шаблонизаторы типа смарти, они становятся тру-MVC-девелоперами...
7ion 16.02.2011 20:25 # 0
А я вот не поклонник использования ООП в веб-разработке, - это не для этого создавалось, черт его дери.
>создать класс, отвечающий за отображение ссылки
>сам шаблон будет хтмл со вставками пхп-тегов
Вы знатный говнокодер. Одна-едиственная задача, которую нужно решить - обойтись без php-вставок.
Вы думаете, что если я засуну foreach в шаблон - верстальщик не поймет, где там html править? Поймет, но для дизайнера-верстальщика это создает только лишний информационный мусор.
Короткие теги скоро запретят, а с длинными даже вывод переменной выглядит уродско.
Здесь либо все, либо ничего. Усредненные извращения не имеют смысла.
>докажите мне, что смарти-теги (и прочих шаблонизаторов) в шаблонах чем-то лучше
ZX_Spectrum 17.02.2011 09:10 # 0
если дизайнер может написать это
<if $var=$val>blah blah $val</if>
то сможет и это
<?php if ($var == $val) echo "blah blah $val" ?>
разница здесь только в том, что второй вариант длиннее (кстати, не обязательно же эхом шарашить, есть же Alternative syntax for control structures)
а по сути разницы никакой!
а если мы возьмем "чистого" дизайнера, полностью абстрагированного от логики приложения и только "рисующего" шаблон страницы, то все равно кому-то придется вносить в разметку какие-либо теги (пхп или шаблонизатора), и какая тогда разница, будет ли такой человек оперировать одним или другим синтаксисом?
я это к тому, что "обойтись без php-вставок" - не должно быть самоцелью. применяя шаблонизатор, мы просто меняем шило на мыло.
7ion 23.02.2011 14:36 # 0
Анонимус 18.02.2011 01:25 # 0
в веб-разработке ООП действительно не нужно
оно вообще-то для программирования делалось.
А так как программисты веб-разработкой не занимаются, то и ООП там не нужно
istem 14.02.2011 23:11 # 0
"Каждый уважающий себя спектрумист обязан написать свою бегущую строку, плазму и труколор".
Lure Of Chaos 15.02.2011 16:43 # 0
istem 15.02.2011 22:21 # 0
bugmenot 15.02.2011 22:22 # 0
istem 15.02.2011 22:34 # 0
ни фига не ковокс, через, блин, бипер радио слушали...
Lure Of Chaos 15.02.2011 23:56 # 0
а какую игру? = )
istem 16.02.2011 00:03 # 0
Анонимус 18.02.2011 01:27 # 0
и змейку
я всегда писал змейку
Lure Of Chaos 18.02.2011 12:23 # 0
istem 18.02.2011 13:11 # 0
guest 18.02.2011 14:33 # +1
bugmenot 18.02.2011 16:00 # 0
так-то.
guest 18.02.2011 18:22 # 0
7ion 14.02.2011 11:25 # +2