Сайт сообщества | Клуб пользователей | О проекте

Имя
Пароль
ПравилаРегистрацияСправка
Сообщения за деньПоиск

Вернуться   Клуб пользователей портальной системы RUNCMS > Опен Ресурс > Разработчикам > Оптимизация

Ответ
 
Опции темы Опции просмотра
AlexLeonov вне форума AlexLeonov
Arbeit macht Frei

Аватар для AlexLeonov

| Цитировать Старый #1 06-17-2005, 14:17

Работая вот над этим модулем: http://www.uralstroyportal.ru/modules/price столкнулся с такой проблемой - при использовании стандартных функций API портала, например $some_tree->makeMySelBox() резко возрастает количество запросов к базе данных при неоднократном вызове данной функции.

Решение, которое пришлось применить, не совсем стандартно, но весьма эффективно. Итак:

Было:
Код:
for ($i=1;$i<=$some_count;$i++) {
...
$some_tree->makeMySelBox("some_name","some_name",0,0,"some_name[]");
...
};
Стало:
Код:
ob_start();
echo "<!--";
ob_flush();
$some_tree->makeMySelBox("some_name","some_name",0,0,"some_name[]");
$selBox = ob_get_contents();
echo "-->";
ob_end_flush();
for ($i=1;$i<=$some_count;$i++) {
...
echo $selBox;
...
};
Такой прием позволяет перенаправить вывод любой функции, выводящей что-то в браузер, в переменную, а затем повторно использовать уже содержимое этой переменной, не делая повторных запросов к базе.

Надеюсь, что пригодится.


Ronny CMS? Yes!
Посетить домашнюю страницу AlexLeonov
  Сообщения: 1,243 c 23.06.2004 | Репутация: 108
Ответ

Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Рейтинг@Mail.ru Хостинг провайдер Majordomo. Powered by: vBulletin Version 3.0
Copyright ©2000-2018, Jelsoft Enterprises Ltd.
Все разделы прочитаны - Руководство форума - Архив - Вверх
Rambler's Top100
Output: 33.78 Kb. compressed to 32.27 Kb. by saving 1.51 Kb. (4.48%)
Page generated in 0.06462 seconds with 10 queries