Слияние кода завершено, страница обновится автоматически
<?php
namespace app\threadtask;
use Yii;
use yii\helpers\VarDumper;
use yii\web\Response;
class ErrorHandler extends \yii\web\ErrorHandler {
public function register() {
}
public function unregister() {
}
/**
* @inheritdoc
*/
public function handleException($exception)
{
$this->exception = $exception;
try {
$this->logException($exception);
if ($this->discardExistingOutput) {
$this->clearOutput();
}
$this->renderException($exception);
} catch (\Exception $e) {
// an other exception could be thrown while displaying the exception
$this->handleFallbackExceptionMessage($e, $exception);
} catch (\Throwable $e) {
// additional check for \Throwable introduced in PHP 7
$this->handleFallbackExceptionMessage($e, $exception);
}
$this->exception = null;
}
/**
* @inheritdoc
*/
protected function handleFallbackExceptionMessage($exception, $previousException)
{
$msg = "An Error occurred while handling another error:\n";
$msg .= (string) $exception;
$msg .= "\nPrevious exception:\n";
$msg .= (string) $previousException;
$response = \Yii::$app->getResponse();
$request = VarDumper::export(\Yii::$app->getRequest()->request);
if (YII_DEBUG) {
$msg .= "\n\$request = $request";
if($response->isSent) {
echo "\n$msg\n";
} else {
$response->data = $response->format === Response::FORMAT_HTML ? '<pre>' . htmlspecialchars($msg, ENT_QUOTES, Yii::$app->charset) . '</pre>' : $msg;
$response->send();
}
} else {
if($response->isSent) {
echo "\n$msg\n\$request = $request\n";
} else {
$response->data = 'An internal server error occurred.';
$response->send();
}
}
error_log($msg);
}
public function renderRequest() {
return '<pre>' . $this->htmlEncode(VarDumper::dump(\Yii::$app->getRequest()->request, 4, true)) . '</pre>';
}
}
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Комментарий ( 0 )