| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > PHP: Общие вопросы > Кэширование или что-то другое... |
| Автор: ArsNov 23.3.2006, 23:06 | ||
| Проблема такая: Грубо говоря есть php скрипт который генерит таблицу такого вида:
В левой(первой) ячейке распечатывается переменная $s (типа деньги), а в правой производятся операции с этими деньгами+распечатка всякой побочной информации за эти деньги. Получается, что левая ячейка прорисовывается раньше правой, и вычисления выполняются позже. Мне необходимо сделать так, чтобы распечатанная в левой ячейке информация не запаздывала от вычислений. Чего то слышал про кэширование, буферизацию вывода, но так и не понял как это тут применить... Как быть? Надеюсь понятно сформулировал. |
| Автор: GePo 23.3.2006, 23:46 |
| думаю, кеширование и буферизация, это не то, что тебе надо. А надо тебе понять простую вещь - php скрипт - это в первую очередь скрипт. В каком порядке ты считаешь, зависит только от тебя. Также только от тебя зависит, в каком порядке ты выводишь. Грубо говоря, если ты хочешь, чтобы в левой колонке были результаты вычислений из правой, то тебе сначала нужно провести эти вычисления, запомнить их, вывести в левой, вывести в правой. |
| Автор: ArsNov 23.3.2006, 23:55 |
| Спасибо! Я я это уже понял, только поздновато оказалось )) Скрипт не маленький и очень накрученый, чего то менять очень тяжело. Неужели нету никаких выходов..? |
| Автор: PARROT 24.3.2006, 00:07 |
| Нужен весь скрипт, тогда может быть найдеться выход. Добавлено @ 00:09 Откуда берется эта $s? Напиши алгоритм действий. |
| Автор: ArsNov 24.3.2006, 00:36 | ||
Сильно упрощенная схема выглядит так:
Вот в функции zagolovok печатается переменная которая хранится в сессии А в функции center($id) идет как раз вычисление этой переменной и занесение её в сессию. Точнее даже не в самом center($id) а в присоединенных через него скриптах. Function center($id) { //Функция делает include скрипта который распечатывает инфу и просчитывает $s } Вот и получается что распечатка раньше вычислений. Вот такие вот грабли блин… |
| Автор: ArsNov 24.3.2006, 00:53 |
| И еще к этим граблям добавляется то, что в этом center($id) инклудится достаточно мощная структура, переность которую в другое место очень тяжело.. |
| Автор: ArsNov 24.3.2006, 01:31 | ||
Всё, проблема решена через кэширование, кому интересно:
|