PHP хатогиҳои сатҳи FATAL -ро ба даст меорад
Маълумоти расмӣ
Сомонаи расмӣ set_error_handler register_shutdown_functionЧӣ гуна ҳамаи хатогиҳоро ба таври комил гирифтан мумкин аст
set_error_handler метавонад барои гирифтани аксари намудҳои хатогӣ истифода шавад.Вақте ки ба хатогии сатҳи FATAL дучор омад, зеро PHP амалиётро мустақиман қатъ мекунад, функсияи бозгашти муқарраркардаи set_error_handler наметавонад ба амал ояд. Дар айни замон, мо бояд register_shutdown_function -ро истифода барем, то функсияи бозгашти зангро барои қатъ кардани барнома таъин кунем. Бояд қайд кард, ки бозгашти муқарраркардаи registr_shutdown_function, пас аз қатъ гардидани барнома, сарфи назар аз он, ки хатогие дар раванд вуҷуд дорад, иҷро карда мешавад. Аз ин рӯ, дар ин бозгашт, мо низ бояд муайян кунем, ки хато рух додааст ё не ва агар хатое рух дода бошад, мо онро дар журнал қайд хоҳем кард. Барои тафсилот, лутфан ба рамзи зерин муроҷиат кунед.
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);
}