mirror of
https://github.com/yiisoft/yii2.git
synced 2025-11-13 20:59:12 +08:00
@@ -8,9 +8,8 @@ if ($exception instanceof \yii\web\HttpException) {
|
|||||||
} else {
|
} else {
|
||||||
$code = $exception->getCode();
|
$code = $exception->getCode();
|
||||||
}
|
}
|
||||||
if ($exception instanceof \yii\base\Exception) {
|
$name = $handler->getExceptionName($exception);
|
||||||
$name = $exception->getName();
|
if ($name === null) {
|
||||||
} else {
|
|
||||||
$name = 'Error';
|
$name = 'Error';
|
||||||
}
|
}
|
||||||
if ($code) {
|
if ($code) {
|
||||||
|
|||||||
@@ -12,13 +12,17 @@
|
|||||||
<meta charset="utf-8"/>
|
<meta charset="utf-8"/>
|
||||||
|
|
||||||
<title><?php
|
<title><?php
|
||||||
|
$name = $handler->getExceptionName($exception);
|
||||||
if ($exception instanceof \yii\web\HttpException) {
|
if ($exception instanceof \yii\web\HttpException) {
|
||||||
echo (int) $exception->statusCode . ' ' . $handler->htmlEncode($exception->getName());
|
echo (int) $exception->statusCode . ' ' . $handler->htmlEncode($name);
|
||||||
} elseif ($exception instanceof \yii\base\Exception) {
|
} else {
|
||||||
echo $handler->htmlEncode($exception->getName() . ' – ' . get_class($exception));
|
$name = $handler->getExceptionName($exception);
|
||||||
|
if ($name !== null) {
|
||||||
|
echo $handler->htmlEncode($name . ' – ' . get_class($exception));
|
||||||
} else {
|
} else {
|
||||||
echo $handler->htmlEncode(get_class($exception));
|
echo $handler->htmlEncode(get_class($exception));
|
||||||
}
|
}
|
||||||
|
}
|
||||||
?></title>
|
?></title>
|
||||||
|
|
||||||
<style type="text/css">
|
<style type="text/css">
|
||||||
@@ -331,12 +335,15 @@ html,body{
|
|||||||
if ($exception instanceof \yii\web\HttpException) {
|
if ($exception instanceof \yii\web\HttpException) {
|
||||||
echo '<span>' . $handler->createHttpStatusLink($exception->statusCode, $handler->htmlEncode($exception->getName())) . '</span>';
|
echo '<span>' . $handler->createHttpStatusLink($exception->statusCode, $handler->htmlEncode($exception->getName())) . '</span>';
|
||||||
echo ' – ' . $handler->addTypeLinks(get_class($exception));
|
echo ' – ' . $handler->addTypeLinks(get_class($exception));
|
||||||
} elseif ($exception instanceof \yii\base\Exception) {
|
} else {
|
||||||
echo '<span>' . $handler->htmlEncode($exception->getName()) . '</span>';
|
$name = $handler->getExceptionName($exception);
|
||||||
|
if ($name !== null) {
|
||||||
|
echo '<span>' . $handler->htmlEncode($name) . '</span>';
|
||||||
echo ' – ' . $handler->addTypeLinks(get_class($exception));
|
echo ' – ' . $handler->addTypeLinks(get_class($exception));
|
||||||
} else {
|
} else {
|
||||||
echo '<span>' . $handler->htmlEncode(get_class($exception)) . '</span>';
|
echo '<span>' . $handler->htmlEncode(get_class($exception)) . '</span>';
|
||||||
}
|
}
|
||||||
|
}
|
||||||
?></h1>
|
?></h1>
|
||||||
<?php endif; ?>
|
<?php endif; ?>
|
||||||
<h2><?= nl2br($handler->htmlEncode($exception->getMessage())) ?></h2>
|
<h2><?= nl2br($handler->htmlEncode($exception->getMessage())) ?></h2>
|
||||||
|
|||||||
@@ -8,8 +8,9 @@
|
|||||||
<span class="arrow">↵</span>
|
<span class="arrow">↵</span>
|
||||||
<h2>
|
<h2>
|
||||||
<span>Caused by:</span>
|
<span>Caused by:</span>
|
||||||
<?php if ($exception instanceof \yii\base\Exception): ?>
|
<?php $name = $handler->getExceptionName($exception);
|
||||||
<span><?= $handler->htmlEncode($exception->getName()) ?></span> –
|
if ($name !== null): ?>
|
||||||
|
<span><?= $handler->htmlEncode($name) ?></span> –
|
||||||
<?= $handler->addTypeLinks(get_class($exception)) ?>
|
<?= $handler->addTypeLinks(get_class($exception)) ?>
|
||||||
<?php else: ?>
|
<?php else: ?>
|
||||||
<span><?= $handler->htmlEncode(get_class($exception)) ?></span>
|
<span><?= $handler->htmlEncode(get_class($exception)) ?></span>
|
||||||
|
|||||||
@@ -379,4 +379,17 @@ class ErrorHandler extends \yii\base\ErrorHandler
|
|||||||
|
|
||||||
return $out;
|
return $out;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Returns human-readable exception name
|
||||||
|
* @param \Exception $exception
|
||||||
|
* @return string human-readable exception name or null if it cannot be determined
|
||||||
|
*/
|
||||||
|
public function getExceptionName($exception)
|
||||||
|
{
|
||||||
|
if ($exception instanceof \yii\base\Exception || $exception instanceof \yii\base\InvalidCallException || $exception instanceof \yii\base\InvalidParamException || $exception instanceof \yii\base\UnknownMethodException) {
|
||||||
|
return $exception->getName();
|
||||||
|
}
|
||||||
|
return null;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user