2012-02-27 2 views
0

У меня есть крючок, настроенный на запуск после того, как окончательная отображаемая страница была отправлена ​​в браузер.Codeigniter post_system hook не работает

$hook['post_system'] = array(
            'filepath' => 'hooks', 
            'filename' => 'notes_hooks.php', 
            'class' => 'Notes_hooks', 
            'function' => 'write_notes', 
       ); 

С моими примечаниями перехватывает класса существо -

class Notes_hooks extends CI_Hooks { 

    function __construct() 
    { 
    parent::__construct(); 
    $this->CI = get_instance(); 
    } 

    function write_notes() 
    { 
    if(isset($this->CI->notes_model)) 
    { 
     $this->CI->notes_model->batch_insert(); 
    } 

    } 

} 

Это все прекрасно работает и выполняет функцию он должен делать, кроме того, что делает функцию перед выводом был отправлен в браузер , Например, если добавить сон после

$this->CI->notes_model->batch_insert(); 

Тогда, когда я загружаю страницу спит затем выводит, а не ожидаемый рендеринг и вывод страницы в браузере с PHP спать в фоновом режиме.

Возможно, мне что-то не хватает?

+0

Хорошее описание на всех –

+0

я не уверен, если это в любом случае правильный ответ, но мне интересно, если есть выход буферизация происходит где-то. –

+0

Это: «$ this-> CI = & get_instance();" вы забыли & –

ответ

0

Вопрос был на самом деле redirect(), вызванный в моем контроллере, так или иначе вызывающий ошибки. Я решил проблему, создав пользовательскую функцию перенаправления.

См: http://codeigniter.com/forums/viewthread/134631/#664913

Смежные вопросы