Betik çalışmaya devam etmesi için yakalanmamış istisna: özel PHP Ölümcül hata önleme

2 Cevap php

Senaryolarım bir BELLİ ölümcül hata olsa bile çalışmaya devam böylece bunu yapmak istiyorum. Şu anda ben bu ölümcül hatayı alabilirsiniz: PHP Ölümcül hata: ileti filan ile yakalanmamış istisna 'MongoConnectionException'.

Bu özel hata yakalamak nasıl, bunu log, ancak komut dosyası çalışmaya devam etmesine izin? Herkes bu ilgili fikri var?

2 Cevap

Standart PHP ölümcül hataları otomatik istisnalar dönüşmemiş gibi daha genel bu konuda biraz dikkatli gereklidir, bu the manual Bu azaltmak için bir yol gitmek gerekir biraz değiştirilmiş.

function exception_error_handler($errno, $errstr, $errfile, $errline ) {
    throw new ErrorException($errstr, 0, $errno, $errfile, $errline);
}
set_error_handler("exception_error_handler");

try {
    /* Trigger exception */
    strpos();
}
catch (ErrorException $e) {
    // deal with the error
}