PHP ifata amakosa yo murwego rwa FATAL

Ibisobanuro

Urubuga rwemewe set_error_handler register_shutdown_function

Nigute ushobora gufata amakosa yose neza

set_error_handler irashobora gukoreshwa mugutwara ubwoko bwamakosa menshi. Mugihe habaye ikosa ryo murwego rwa FATAL, kubera ko PHP ihagarika ibikorwa, imikorere yo guhamagarwa yashyizweho na set_error_handler ntishobora guterwa. Muri iki gihe, dukeneye gukoresha registre_shutdown_imikorere kugirango dushyireho ibikorwa byo guhamagarira kurangiza gahunda. Twabibutsa ko guhamagarwa kwashyizweho na registre_shutdown_imikorere bikorwa nyuma yuko porogaramu irangiye, utitaye ko hari ikosa mubikorwa. Muri uku guhamagarwa rero, dukeneye kandi kumenya niba hari ikosa ryabaye, kandi niba hari ikosa ryabaye, tuzabyandika muri logi. Kubisobanuro birambuye, nyamuneka reba kode ikurikira.

            set_error_handler('exception_handler');
register_shutdown_function('shutdown_handler');
function exception_handler($err_no, $err_str, $err_file, $err_line)
{
    error_reporting(0);
    // save error log
    // ...
    error_reporting(E_ALL);
}
function shutdown_handler()
{
    $error = error_get_last();
    if (empty($error)) {
        return;
    }
    error_reporting(0);
    // save error log
    // ...
    error_reporting(E_ALL);
}