flush() CodeIgniter

ali7
На сайте с 21.02.2010
Offline
25
437

Здравствуйте.

Подскажите, пожалуйста, как в CI можно освобождать буфер вывода?

Допустим есть библиотека logs:

class Logs {

public function showLog($log, $type = MESSAGE) {
$message = '';
if ($type >= 2) {
$message .= '<span style="color: red">';
} else {
$message .= '<span style="color: green">';
}
$message .= date('d-m-Y H:i:s') . ' - ' . $log . "</span><br/>\n";
echo $message;
flush();
if ($type >= 5) {
exit();
}
}
}

В контолеере вызываем метод showLog библитеки logs:

public function index()

{
for ($i=0; $i < 5; $i++){
$this->logs->showLog('test message');
sleep(1);
}
}

В итоге буфер вывода освобождается только в конце работы приложения.

ob_start() ob_flush() в методе showLog() тоже не прокатывают.

Помогите, плиз. Очень нужно.

Заранее большое спасибо!

ali7 добавил 07.08.2011 в 19:23

Проблема решилась добавлением заголовков: header('Content-type: text/html; charset=utf-8'); в index.php CI

Тут должна быть моя подпись

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий