改进异常页面

This commit is contained in:
thinkphp
2015-12-10 22:43:47 +08:00
parent 65be8f094c
commit f83eecb853
2 changed files with 28 additions and 31 deletions

View File

@@ -98,7 +98,8 @@ class Error
{ {
$message = is_array($error) ? $error['message'] : $error; $message = is_array($error) ? $error['message'] : $error;
$code = is_array($error) ? $error['code'] : $code; $code = is_array($error) ? $error['code'] : $code;
$e = [];
$e = ['mssage' => $message, 'code' => $code];
if (APP_DEBUG) { if (APP_DEBUG) {
//调试模式下输出错误信息 //调试模式下输出错误信息
if (!is_array($error)) { if (!is_array($error)) {
@@ -112,26 +113,22 @@ class Error
} else { } else {
$e = $error; $e = $error;
} }
} else { } elseif (!IS_API) {
//否则定向到错误页面 //否则定向到错误页面
$error_page = Config::get('error_page'); $error_page = Config::get('error_page');
if (!empty($error_page)) { if (!empty($error_page)) {
header('Location: ' . $error_page); header('Location: ' . $error_page);
} else { } else {
if (Config::get('show_error_msg')) { $e['message'] = Config::get('show_error_msg') ? $message : Config::get('error_message');
$e['message'] = is_array($error) ? $error['message'] : $error;
} else {
$e['message'] = Config::get('error_message');
}
} }
} }
$type = Config::get('default_return_type'); $type = Config::get('default_return_type');
if ('html' == $type) { if (!IS_API && 'html' == $type) {
include Config::get('exception_tmpl'); include Config::get('exception_tmpl');
} else { } else {
// 异常信息输出监听 // 异常信息输出监听
Hook::listen('error_output', $e); APP_HOOK && Hook::listen('error_output', $e);
// 输出异常内容 // 输出异常内容
Response::returnData($e, $type); Response::returnData($e, $type);
} }

View File

@@ -5,18 +5,18 @@
<style type="text/css"> <style type="text/css">
*{ padding: 0; margin: 0; } *{ padding: 0; margin: 0; }
html{ overflow-y: scroll; } html{ overflow-y: scroll; }
body{ background: #fff; font-family: '微软雅黑'; color: #333; font-size: 16px; } body{ background: #fff; font-family: "Microsoft Yahei","Helvetica Neue",Helvetica,Arial,sans-serif; color: #333; font-size: 16px; }
img{ border: 0; } img{ border: 0; }
.error{ padding: 24px 48px; } .error{ padding: 24px 48px; }
.face{ font-size: 100px; font-weight: normal; line-height: 120px; margin-bottom: 12px; } .face{ font-size: 10.25em; color:red;font-weight: 400; line-height: 1.0; margin-bottom: .15em; }
h1{ font-size: 32px; line-height: 48px; } .error .content{ padding-top: 10px;}
.error .content{ padding-top: 10px}
.error .info{ margin-bottom: 12px; } .error .info{ margin-bottom: 12px; }
.error .info .title{ margin-bottom: 3px; } .error .info .title{ margin-bottom: 3px; }
.error .info .title h3{ color: #000; font-weight: 700; font-size: 16px; } h1{ font-size:2.75em;line-height:1.2;font-weight:200}
h2{ padding-bottom:.3em;line-height:1.225;border-bottom:1px solid #eee;color: #000; font-weight: 300; font-size: 1.75em; }
.error .info .text{ line-height: 24px; } .error .info .text{ line-height: 24px; }
.copyright{ padding: 12px 48px; color: #999; } .copyright{ font-weight:200;padding: 12px 48px; color: #999; }
.copyright a{ color: #000; text-decoration: none; } .copyright a{ color: #000; text-decoration: none;font-weight:300;font-size:1.1em }
</style> </style>
</head> </head>
<body> <body>
@@ -25,29 +25,29 @@ h1{ font-size: 32px; line-height: 48px; }
<h1><?php echo strip_tags($e['message']);?></h1> <h1><?php echo strip_tags($e['message']);?></h1>
<div class="content"> <div class="content">
<?php if(isset($e['file'])) {?> <?php if(isset($e['file'])) {?>
<div class="info"> <div class="info">
<div class="title"> <div class="title">
<h3></h3> <h2></h2>
</div> </div>
<div class="text"> <div class="text">
<p>FILE: <?php echo $e['file'] ;?> &#12288;LINE: <?php echo $e['line'];?></p> <p>FILE: <?php echo $e['file'] ;?> &#12288;LINE: <?php echo $e['line'];?></p>
</div> </div>
</div> </div>
<?php }?> <?php }?>
<?php if(isset($e['trace'])) {?> <?php if(isset($e['trace'])) {?>
<div class="info"> <div class="info">
<div class="title"> <div class="title">
<h3>TRACE</h3> <h2>TRACE</h2>
</div> </div>
<div class="text"> <div class="text">
<p><?php echo nl2br($e['trace']);?></p> <p><?php echo nl2br($e['trace']);?></p>
</div> </div>
</div> </div>
<?php }?> <?php }?>
</div> </div>
</div> </div>
<div class="copyright"> <div class="copyright">
<p><a title="官方网站" href="http://www.thinkphp.cn">ThinkPHP</a><sup><?php echo THINK_VERSION ?></sup> { Fast & Simple OOP PHP Framework } -- [ WE CAN DO IT JUST THINK ]</p> <p><a title="官方网站" href="http://www.thinkphp.cn">ThinkPHP</a> <sup><?php echo THINK_VERSION ?></sup> { Fast & Simple OOP PHP Framework } -- [ WE CAN DO IT JUST THINK ]</p>
</div> </div>
</body> </body>
</html> </html>