Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Что работает быстрее?
Форумы портала PHP.SU » » HTTP и PHP » Что работает быстрее?

Страниц (1): [1]
 

1. Дрон - 28 Февраля, 2015 - 14:49:18 - перейти к сообщению
Добрый день.
Есть html файл - шаблон (page.html). Он поделен на несколько секций с помощью разделителя. Когда загружается страница, которой соответствует данный шаблон (page.php), обработчик берет шаблон, рвет его по разделителю (регулярное выражение) и куски вставляет в нужные места. Страница готова.
C другой стороны данный шаблон можно запросто генерировать через сам PHP при помощи массивов и циклов (3-4 массива и столько же циклов).

Как считаете, что работает быстрее - загрузка через шаблон или генерация на лету? Размер шаблона - от 2 до 15КБ.
Сайт таков, что шаблоны почти не модифицируются.
2. DelphinPRO - 01 Марта, 2015 - 01:30:49 - перейти к сообщению
Шаблонизатор берет шаблон, один раз его разбирает и создает php-файл с циклами и прочим (компилирует). В дальнейшем используется скомпилированный файл, пока не изменится исходный шаблон. Это принцип работы большинства шаблонизаторов. Php код всегда исполнится быстрее любых других парсеров.
3. Дрон - 01 Марта, 2015 - 10:17:22 - перейти к сообщению
Хм, что не совсем понятно. Так такое надо делать на в работе, а только на этапе написания сайта.

Я просто вот что подумал: есть страница, которая генерируется из глобального шаблона + php-кода, вывод которого зависит от страницы. Так вот получается, что этот самый вывод для каждой страницы свой и при этом всегда остается постоянным. Т.е., условно говоря, для страницы page1.php он всегда выводит "Тророло", для страницы page2.php он всегда выводит "Йцукен", для страницы page3.php он всегда выводит "1234567890"... Так вот может, вместо того, чтобы каждый раз гонять php-код, стоит его вывод единожды сохранить в html файл для каждой такой страницы? И уже потом использовать этот html-код, вставляя его в нужные места страницы? (предварительно разбив полученный шаблон по разделителю)
4. teddy - 01 Марта, 2015 - 12:15:59 - перейти к сообщению
До меня не доходит то почему разработчики делят один простой шаблон на образно выражаясь 1000 кусков даже когда это не нужно. Делить нужно тогда, когда в этом есть необходимость и только то, что нужно.

Например, есть какой то блок, который появляется на 4 разных страницах из 10. В этом случае есть смысл выделить этот самый блок в отдельный шаблон чтоб не дублировать код и подключать этот шаблон там где он нужен.

Если образно выражаясь меняется только "центральная часть", то тут двух шаблонов будет достаточно. Один постоянный(общий), а центральный уже подключать в зависимости от страницы. И да, инклюда тут более чем достаточно, никакие регулярные выражения и разделители не нужны. Скажи честно Вам самому удобно этим страдать?

По поводу скорости - тут все зависит от используемых инструментов и количества телодвижений в том или ином случае. Не буду расписывать подробно, думаю понятно о чем я.
5. ShniderHost - 20 Мая, 2015 - 17:24:28 - перейти к сообщению
Просто уверен что php отработает быстрее!

 

Powered by ExBB FM 1.0 RC1