CodeIgniter | прямое эхо во время работы скрипта - PullRequest
0 голосов
/ 02 июня 2010

Возможно ли что-то повторить, когда скрипт, например, все еще работает в цикле?

моя проблема: Я спрашиваю сервер с Ajax, а затем сервер получает почту и сохраняет ее в базе данных. Это заняло около 15 сек. В течение этого времени Сервер должен отражать свой прогресс, чтобы Javascript мог обновлять панель загрузки. Это хорошо работает с PHP-скриптом без CodeIgniter.

Есть ли способ пропустить выходной класс и все такое, чтобы получить прямое эхо?

Спасибо

Ответы [ 3 ]

0 голосов
/ 03 июня 2010

Я помню, как читал где-то, что выходной класс CI в основном создает выходной буфер для вас (ob_start), поэтому вы должны иметь возможность сбрасывать вывод, используя функции ob_ в php (я думаю, попробуйте).

В качестве альтернативы, если вы не можете обойти проблему с буфером, ваш скрипт может сохранить состояние выполнения в переменной сеанса и выполнить интервальный вызов отдельного метода ajax, который возвращает только значение этой переменной ... просто идея. Возможно, более надежный

0 голосов
/ 03 июня 2010

Может быть, это то, что вы ищете? Из руководства пользователя по просмотрам

Существует третий необязательный параметр, позволяющий изменить поведение функции, чтобы она возвращала данные в виде строки, а не отправляла их в браузер. Это может быть полезно, если вы хотите обработать данные каким-либо образом. Если вы установите для параметра значение true (логическое значение), он вернет данные. Поведение по умолчанию - false, что отправляет его в ваш браузер. Не забудьте назначить его переменной, если вы хотите, чтобы данные возвращались:

$string = $this->load->view('myfile', '', true);
0 голосов
/ 03 июня 2010

Вы можете 'echo' во время выполнения скрипта в CodeIgniter.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...