Çıktı tamponunun içindeki hataları

1 Cevap php

Ben çıkış tamponu ile bazı sorunlar yaşıyorum. Ben komut tampon ve bir geri arama kullanarak sonuç basmak. Sorun, bir hata herhangi bir noktada atılır ise, hiçbir şey gösterilir ediliyor ve ben boş bir ekran alıyorum olmasıdır. Benim kendi özel hata işleyicileri ayarı denedim ama hiçbir şey iş gibi görünüyor. Ben hataları yerine benim hata işleyici geri çağrı yöntemini çağırmak için benim tampon neden çünkü bu bir his var. Ya o ya ben başka sorunları neden hata statik bir yöntem olarak işleyici, ancak değişen var çünkü bu.

Bu bana şaşkına çünkü ben gerçekten herhangi bir yardım takdir ediyorum!

public function constructor()
{
    ob_start(array(__CLASS__, 'render'));
    self::$buffer_level = ob_get_level();

    set_error_handler(array(__CLASS__, 'exception_handler'));
    set_exception_handler(array(_CLASS__, 'exception_handler'));

    RUNNING MY SCRIPT HERE

    ob_end_flush();
}

public static function exception_handler($exception, $message = NULL, $file = NULL, $line = NULL)
{
    while (ob_get_level() > self::$buffer_level)
    {
    ob_end_clean();
    }

    echo $exception.' - '.$message.' - '.$file.' - '.$line.'<br/>';
}

1 Cevap

Ben varsayılan apache hata günlüğüne hataları göndermek hangi PHP hata günlüğünü açma öneririm. Ayrıca track_errors açma deneyebilirsiniz, ama ben günlük en iyi bahis olduğunu düşünüyorum. Eğer apache günlüğüne erişiminiz yoksa, el işleri oturum açmanız gerekebilir.

Günlük dosyaları ve çıkış tamponlama ve (ajax gibi) diğer "perde arkasında" şeyler kullanırken izleme stratejiler esastır.

Ayrıca output_buffering ayarda bir görünüm olabilir. Bu makaleye bakın: http://thinkpositivesoftware.blogspot.com/2009/03/have-blank-php-page.html