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

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: серьезные вопросы =)

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


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

> Без описания
Вездеход
Отправлено: 06 Июля, 2009 - 09:10:55
Post Id



Частый посетитель


Покинул форум
Сообщений всего: 820
Дата рег-ции: Апр. 2008  
Откуда: Россия


Помог: 0 раз(а)




народ, скажите плз как и когда вы кешируете
и как делаете шаблонизатор - как работает (если можно с кодом)

нужно заюзать их, но думаю как лучше...


-----
о великий nl2br!
Хочешь невероятных ощущений? Юзай блокнот! Блокнот - чудеса сбываются!
Чем меньше вы знаете PHP - тем ценнее мои знания!
 
 Top
JustUserR
Отправлено: 06 Июля, 2009 - 13:59:36
Post Id



Активный участник


Покинул форум
Сообщений всего: 8715
Дата рег-ции: Июнь 2009  


Помог: 17 раз(а)




Вездеход * Шаблонизатор если делать свой то по традиции на регулярных выражениях а кеши станаюсь напрямую не использовать (Ибо картинки браузер и сам кэширует а остальное одн накладки)
* - Чисто собственное мнение


-----
Сделать можно все что угодно - нужно только старание, терпение и хороший поисковик Улыбка
Безлимитный web-хостинг от 15 рублей за 40 МБ дискового пространства - http://ihost[dot]oks71[dot]ru/
 
 Top
WNeZRoS
Отправлено: 06 Июля, 2009 - 14:48:39
Post Id



Новичок


Покинул форум
Сообщений всего: 30
Дата рег-ции: Май 2009  


Помог: 0 раз(а)




У меня шаблонизатор всегда файл .html с дизом, в котором вместо активных элементов написано типа: <{PAGE}> <{TITLE}> ...
а в скрипте эти переменные заменяются без всяких регулярок
Примерная схема:
PHP:
скопировать код в буфер обмена
  1. <?PHP
  2. $html = file_get_contents('diz.html');
  3. $body = '<h1>TEST PAGE</h1>'; // генерируем текст страницы
  4. $html = str_replace('<{PAGE}>', $body, $html);
  5. echo $html;
  6. ?>

(Отредактировано автором: 06 Июля, 2009 - 14:50:34)

 
 Top
Вездеход
Отправлено: 06 Июля, 2009 - 15:17:17
Post Id



Частый посетитель


Покинул форум
Сообщений всего: 820
Дата рег-ции: Апр. 2008  
Откуда: Россия


Помог: 0 раз(а)




WNeZRoS
ну и я так же примерно...

может еще есть какие либо варианты? )


-----
о великий nl2br!
Хочешь невероятных ощущений? Юзай блокнот! Блокнот - чудеса сбываются!
Чем меньше вы знаете PHP - тем ценнее мои знания!
 
 Top
Ch_chov
Отправлено: 06 Июля, 2009 - 16:00:06
Post Id



Постоянный участник


Покинул форум
Сообщений всего: 2121
Дата рег-ции: Июль 2008  
Откуда: из города


Помог: 90 раз(а)




Всякие монстры типа smarty меня пугают. Имхо это язык в языке.
Я использую этот PHP шаблонизатор. Немного переработал его под свои задачи. Очень удобно, особенно если делашь шаблоны самостоятельно.


З.Ы. Если шаблон не компилируемый, то использовать регулярки, я думаю, будет очень накладно...
 
 Top
JustUserR
Отправлено: 06 Июля, 2009 - 17:00:58
Post Id



Активный участник


Покинул форум
Сообщений всего: 8715
Дата рег-ции: Июнь 2009  


Помог: 17 раз(а)




Да я тоже smarty недолюбливаю А что касается шаблонов я предпочитаю формат %подстановка% (Если шаблон чистый HTML на подстановку переменных)


-----
Сделать можно все что угодно - нужно только старание, терпение и хороший поисковик Улыбка
Безлимитный web-хостинг от 15 рублей за 40 МБ дискового пространства - http://ihost[dot]oks71[dot]ru/
 
 Top
Вездеход
Отправлено: 06 Июля, 2009 - 22:59:27
Post Id



Частый посетитель


Покинул форум
Сообщений всего: 820
Дата рег-ции: Апр. 2008  
Откуда: Россия


Помог: 0 раз(а)




JustUserR пишет:
я предпочитаю формат %подстановка%

через str_replace замену проводите? )


-----
о великий nl2br!
Хочешь невероятных ощущений? Юзай блокнот! Блокнот - чудеса сбываются!
Чем меньше вы знаете PHP - тем ценнее мои знания!
 
 Top
OverNik
Отправлено: 07 Июля, 2009 - 00:09:31
Post Id



Частый гость


Покинул форум
Сообщений всего: 182
Дата рег-ции: Янв. 2008  


Помог: 0 раз(а)




WNeZRoS
а как к примеру в этот же
Цитата:
$body = '<h1>TEST PAGE</h1>'

бросить не текстовые даные а ту же функцию PHP, или десяток сктрок PHP кода?
неотказался бы узанть Закатив глазки
 
 Top
JustUserR
Отправлено: 07 Июля, 2009 - 00:59:15
Post Id



Активный участник


Покинул форум
Сообщений всего: 8715
Дата рег-ции: Июнь 2009  


Помог: 17 раз(а)




Вездеход пишет:
Через str_replace замену проводите? )
Да через нее самую Улыбка
Я надеюсь вам не известно (А если известно прошу поделиться) какихто проблем (В том числе по безопасности) при таком подходе при замене?
PS Экранирование знака % я обычно продумываю (Например чтоб вывести % надо ввести %%)

(Отредактировано автором: 07 Июля, 2009 - 01:00:52)



-----
Сделать можно все что угодно - нужно только старание, терпение и хороший поисковик Улыбка
Безлимитный web-хостинг от 15 рублей за 40 МБ дискового пространства - http://ihost[dot]oks71[dot]ru/
 
 Top
WNeZRoS
Отправлено: 07 Июля, 2009 - 08:44:07
Post Id



Новичок


Покинул форум
Сообщений всего: 30
Дата рег-ции: Май 2009  


Помог: 0 раз(а)




OverNik
PHP:
скопировать код в буфер обмена
  1. function get_body_text()
  2. {
  3. return file_get_contents('body.text');
  4. }
  5.  
  6. $body = get_body_text();
  7. $body .= '<br>Copyright PHP &copy; ';
  8. if(data('Y') == 2009)
  9. $body .= '2009';
  10. else
  11. $body .= '2009 - '.date('Y');

Конечно же лучше инфу хранить в бд, а не в body.text
 
 Top
Вездеход
Отправлено: 07 Июля, 2009 - 10:43:28
Post Id



Частый посетитель


Покинул форум
Сообщений всего: 820
Дата рег-ции: Апр. 2008  
Откуда: Россия


Помог: 0 раз(а)




JustUserR
не знаю с чем связанно, но...

- получаю данные из базы данных. до 50 строк например.
- через цикл вызываю функцию для каждой строки которая прогоняет шаблон и вставляет полученные данные, а затем возвращает HTML код
- потом вывожу код. полученный после обработки данных из бд.

все. ничего сложного. выполняется быстро, хорошо. БД работает стабильно - все выводится корректно. кроме одного.
данные полученные и выведенные таким способом переодически "пропадают" - т.е. HTML код генерится правильно, однако вместо данных из бд на места шаблонов вставляются пробелы... не всегда, но переодически бывает. с чем связанно непонятно...


-----
о великий nl2br!
Хочешь невероятных ощущений? Юзай блокнот! Блокнот - чудеса сбываются!
Чем меньше вы знаете PHP - тем ценнее мои знания!
 
 Top
JustUserR
Отправлено: 07 Июля, 2009 - 12:52:09
Post Id



Активный участник


Покинул форум
Сообщений всего: 8715
Дата рег-ции: Июнь 2009  


Помог: 17 раз(а)




Цитата:
Не всегда, но переодически бывает. с чем связанно непонятно...
Хм надо например в логи записвать что считалось а что потом преобразовалось и смотреть когда вываливается пустота - может база подвисает?
К слову сказать обсуждение этих проблем очень важно потому что раньше когда встречались всякие подобные проблемы (В том числе как щас обсуждали про heaer->location) просто делал walkaround а щас смотрю эти баги достаточно распространены


-----
Сделать можно все что угодно - нужно только старание, терпение и хороший поисковик Улыбка
Безлимитный web-хостинг от 15 рублей за 40 МБ дискового пространства - http://ihost[dot]oks71[dot]ru/
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Программирование на PHP »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB