Bidh PHP a ’glacadh mhearachdan ìre FATAL

Iomradh oifigeil

Làrach-lìn oifigeil set_error_handler register_shutdown_function

Mar a ghlacas tu mearachdan gu foirfe

Faodar set_error_handler a chleachdadh gus a ’mhòr-chuid de sheòrsan mearachd a ghlacadh. Nuair a lorgar mearachd ìre FATAL, leis gu bheil PHP a’ cur crìoch air an obrachadh gu dìreach, cha ghabh an gnìomh gairm air ais a chaidh a shuidheachadh le set_error_handler a bhrosnachadh. Aig an àm seo, feumaidh sinn register_shutdown_function a chleachdadh gus an gnìomh gairm air ais a shuidheachadh airson crìoch a ’phrògraim. Bu chòir a thoirt fa-near gu bheil an gairm air ais a chaidh a shuidheachadh le register_shutdown_function air a choileanadh an dèidh don phrògram a bhith air a thoirt gu crìch, ge bith a bheil mearachd sa phròiseas. Mar sin anns an ais-ghairm seo, feumaidh sinn cuideachd dearbhadh a bheil mearachd air tachairt, agus ma thachair mearachd, clàraichidh sinn e sa chlàr. Airson mion-fhiosrachadh, thoir sùil air a ’chòd a leanas.

            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);
}