本文整理汇总了PHP中ErrorHandler::GetBacktrace方法的典型用法代码示例。如果您正苦于以下问题:PHP ErrorHandler::GetBacktrace方法的具体用法?PHP ErrorHandler::GetBacktrace怎么用?PHP ErrorHandler::GetBacktrace使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类ErrorHandler
的用法示例。
在下文中一共展示了ErrorHandler::GetBacktrace方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: Handler
public static function Handler($errNo, $errStr, $errFile, $errLine)
{
$backtrace = ErrorHandler::GetBacktrace(2);
//Error message to be displayed, logged, or mailed
$error_message = "\nERRNO: {$errNo}\nTEXT: {$errStr}" . "\nLOCATION: {$errFile}, line " . "{$errLine}, at " . date('F j, Y, g:i a') . "\nShowing backtrace:\n{$backtrace}\n\n";
if (SEND_ERROR_MAIL == true) {
error_log($error_message, 1, ADMIN_ERROR_MAIL, "From: " . SENDMAIL_FROM . "\r\nTo: " . ADMIN_ERROR_MAIL);
}
//Log the error, in case LOG_ERRORS is true
if (LOG_ERRORS == true) {
error_log($error_message, 3, LOG_ERRORS_FILE);
}
/* Warnings don't abort execution if IS_WARNING_FATAL is false
E_NOTICE and E_USER_NOTICE errors don't abort execution */
if ($errNo == E_WARNING && IS_WARNING_FATAL == false || ($errNo == E_NOTICE || $errNo == E_USER_NOTICE)) {
// Show message only if DEBUGGING is true
if (DEBUGGING == true) {
echo '<div class="error_box"><pre>' . $error_message . '</pre></div>';
}
} else {
// Show error message
if (DEBUGGING == true) {
echo '<div class="error_box"><pre>' . $error_message . '</pre></div>';
} else {
echo SITE_GENERIC_ERROR_MESSAGE;
}
// Stop processing the request
exit;
}
}
示例2: Handler
public static function Handler($errNo, $errStr, $errFile, $errLine)
{
$backtrace = ErrorHandler::GetBacktrace(2);
//Creating error message.
$error_message = "\nErrNo: {$errNo}\n TEXT: {$errStr}\n LOCATION: {$errFile}\n LINE: {$errLine} at" . date('F j, Y, g:i:a') . " Showing Backtrace: {$backtrace}" . "\n";
if (LOG_ERRORS) {
error_log($error_message, 3, LOG_ERROR_FILE);
}
if (SEND_ERROR_MAIL == true) {
error_log($error_message, 1, ADMIN_ERROR_MAIL, "From: " . SENDMAIL_FROM . "\r\nTo: " . ADMIN_ERROR_MAIL);
}
if ($errNo == E_WARNING && IS_WARNING_FATAL == false || ($errNo == E_NOTICE || $errNo == E_USER_NOTICE)) {
if (DEBUGGING) {
echo '<div class="error_box"> <b> <pre>' . $error_message . '</pre> </b> </div>';
}
} else {
if (DEBUGGING) {
echo '<div class="error_box"> <b> <pre>' . $error_message . '</pre> </b> </div>';
} else {
echo SITE_GENERIC_FORM_MESSAGE;
ob_clean();
include '500.php';
flush();
ob_flush();
ob_end_clean();
exit;
}
exit;
}
}
示例3: Handler
public static function Handler($errNo, $errStr, $errFile, $errLine)
{
// первые два элемента массива нам неинтересны
$backtrace = ErrorHandler::GetBacktrace(2);
// Сообщения об ошибках, которые будут выводится, отправляться по эл. почте
// или записываться в журнал
$error_message = "\nERRNO: {$errNo}\nTEXT: {$errStr}" . "\nLOCATION: {$errFile}, line " . "{$errLine}, at " . date('F j, Y, g:i a') . "\nShowing backtrace:\n{$backtrace}\n\n";
// Отправляем сообщение об ошибках, если SEND_ERROR_MAIL равно true
if (SEND_ERROR_MAIL == true) {
error_log($error_message, 1, ADMIN_ERROR_MAIL, "From: " . SENDMAIL_FROM . "\r\nTo: " . ADMIN_ERROR_MAIL);
}
// Записываем сообщения в журнал, если LOG_ERRORS равно true
if (LOG_ERRORS == true) {
error_log($error_message, 3, LOG_ERRORS_FILE);
}
/*выполнение не прекращается при предупреждениях, если IS_WARNING_FATAL равен false,
ошибки E_NOTICE и E_USER_NOTICE тоже не приводят к прекращению выполнения*/
if ($errNo == E_WARNING && IS_WARNING_FATAL == false || ($errNo == E_NOTICE || $errNo == E_USER_NOTICE)) {
// выводим сообщение, только если DEBUGGING равен true
if (DEBUGGING == true) {
echo '<div class="error_box"><pre>' . $error_message . '</pre></div>';
}
} else {
// если ошибка фатальная
if (DEBUGGING == true) {
echo '<div class="error_box"><pre>' . $error_message . '</pre></div>';
} else {
//очищаем буфер вывода
ob_clean();
//Загружаем страницу с сообщением об ошибке 500
include '500.php';
//очищаем буфер вывода и останавливаем выполнение
flush();
ob_flush();
ob_end_clean();
exit;
}
// оставнавливаем обработку запроса
exit;
}
}
示例4: Handler
public static function Handler($errNo, $errStr, $errFile, $errLine)
{
/* Первые два элемента массива трассировки нам неинтересны:
- ErrorHandler.GetBacktrace
- ErrorHandler.Handler */
$backtrace = ErrorHandler::GetBacktrace(2);
// Сообщения об ошибках, которые будут выводиться, отправляться по
// электронной почте или записываться в журнал
$error_message = "\nERRNO: {$errNo}\nTEXT: {$errStr}" . "\nLOCATION: {$errFile}, line " . "{$errLine}, at " . date('F j, Y, g:i a') . "\nShowing backtrace:\n{$backtrace}\n\n";
// Отправляем сообщения об ошибках, если SEND_ERROR_MAIL = true
if (SEND_ERROR_MAIL == true) {
error_log($error_message, 1, ADMIN_ERROR_MAIL, "From: " . SENDMAIL_FROM . "\r\nTo: " . ADMIN_ERROR_MAIL);
}
// Записываем сообщения в журнал, если LOG_ERRORS равно true
if (LOG_ERRORS == true) {
error_log($error_message, 3, LOG_ERRORS_FILE);
}
/* Выполнение не прекращается при предупреждениях,
если IS_WARNING_FATAL = false. Ошибки E_NOTICE и E_USER_NOTICE
тоже не приводят к прекращению выполнения*/
if ($errNo == E_WARNING && IS_WARNING_FATAL == false || ($errNo == E_NOTICE || $errNo == E_USER_NOTICE)) {
// Выводим сообщение, только если DEBUGGING = true
if (DEBUGGING == true) {
echo '<div class="error_box"><pre>' . $error_message . '</pre></div>';
}
} else {
// Выводим сообщение об ошибке
if (DEBUGGING == true) {
echo '<div class="error_box"><pre>' . $error_message . '</pre></div>';
} else {
echo SITE_GENERIC_ERROR_MESSAGE;
}
// Останавливаем обработку запроса
exit;
}
}