set_ error_ handler и собачка

Духовность™

Продвинутый новичок
set_ error_ handler и собачка

Сделал логирование ошибок в базу путем set_ error_ handler:

PHP:
function global_error_handler($errortype, $errstr, $errfile, $errline)
{
    Database::getInstance()->query('INSERT INTO `php_error_log` VALUES (NULL, "?", "?", "?", ?)', 
    $errortype, $errstr, $errfile, $errline);
}
Неприятно был удивлен, что ошибка в коде
PHP:
@unlink('non_exists_file');
не подавляется собакой.

В документацию глядел, но ничего не увидел по этой теме.. Собака при set_ error_ handler не работает? :confused:
 

Gas

может по одной?
Написано,
error_reporting() settings will have no effect and your error handler will be called regardless - however you are still able to read the current value of error_reporting and act appropriately. Of particular note is that this value will be 0 if the statement that caused the error was prepended by the @ error-control operator
 

Gas

может по одной?
видимо так:
if (!error_reporting()) do_nothing;
else do_error_catch();
 

Gas

может по одной?
Ну написано же, что в своём error хендлере ты можешь определить собаку так:
error_reporting() == 0 - это значит что сиськи (собака в смысле), а если не 0, то обрабатывай ошибку.
 
Сверху