这篇文章将为大家详细讲解有关php怎么自定义报错页面,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。
php自定义报错页面的方法:1、在配置文件中添加错误页面模板信息;2、将配置信息放入当前模型的/Conf/config.php中;3、在当前模型的View目录下创建Public文件夹,并在其中自定义错误页面即可。
本文操作环境:windows10系统、php 7&&thinkphp 5、thinkpad t480电脑。
ThinkPHP 作为一款轻量级的PHP开发框架,拥有丰富的文档,而且相对于其他框架来说更加容易上手。因此我们这里选择thinkphp来实现自定义报错页面。
ThinkPHP 本身为我们提供了自带的错误页面、异常页面等信息提示页面,比如下面的代码会出现这样的提示:
$this->error('验证码错误!');
由于自带的页面并不美观,所以我们需要自定义这些页面,ThinkPHP 为我们提供了自定义提示页面这样一种功能。
在配置文件中添加如下配置信息:
/* 错误页面模板 */
'TMPL_ACTION_ERROR' => MODULE_PATH.'View/Public/error.html', // 默认错误跳转对应的模板文件
'TMPL_ACTION_SUCCESS' => MODULE_PATH.'View/Public/success.html', // 默认成功跳转对应的模板文件
'TMPL_EXCEPTION_FILE' => MODULE_PATH.'View/Public/exception.html',// 异常页面的模板文件
把这段配置信息放入到当前模型的 /Conf/config.php 中,然后在当前模型的 View 目录下创建 Public 文件夹,并在里面自定义 error.html success.html 及 exception.html 即可。
下面是一个简单的错误页面模板:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>跳转提示</title>
<style type="text/css">
*{ padding: 0; margin: 0; }
body{ background: #290C0C; font-family: '微软雅黑'; color: #fff; font-size: 16px; }
.system-message{ padding: 24px 48px; }
.system-message h2{ font-size: 80px; font-weight: normal; line-height: 120px; margin-bottom: 12px }
.system-message .jump{ padding-top: 10px;margin-bottom:20px}
.system-message .jump a{ color: #333;}
.system-message .success,.system-message .error{ line-height: 1.8em; font-size: 36px }
.system-message .detail{ font-size: 12px; line-height: 20px; margin-top: 12px; display:none}
#wait {
font-size:46px;
}
#btn-stop,#href{
display: inline-block;
margin-right: 10px;
font-size: 16px;
line-height: 18px;
text-align: center;
vertical-align: middle;
cursor: pointer;
border: 0 none;
background-color: #8B0000;
padding: 10px 20px;
color: #fff;
font-weight: bold;
border-color: transparent;
text-decoration:none;
}
#btn-stop:hover,#href:hover{
background-color: #ff0000;
}
</style>
</head>
<body>
<div class="system-message">
<h2>提示信息!</h2>
<?php if(isset($message)) {?>
<p class="error"><?php echo($message); ?></p>
<?php }else{?>
<p class="error"><?php echo($error); ?></p>
<?php }?>
<p class="detail"></p>
<p class="jump">
<b id="wait"><?php echo($waitSecond); ?></b> 秒后页面将自动跳转
</p>
<div>
<a id="href" id="btn-now" href="<?php echo($jumpUrl); ?>">立即跳转</a>
<button id="btn-stop" type="button" onclick="stop()">停止跳转</button>
<a id="href" id="btn-now" href="<?php echo(U('Public/logout')); ?>">重新登录</a>
</div>
</div>
<script type="text/javascript">
(function(){
var wait = document.getElementById('wait'),href = document.getElementById('href').href;
var interval = setInterval(function(){
var time = --wait.innerHTML;
if(time <= 0) {
location.href = href;
clearInterval(interval);
};
}, 1000);
window.stop = function (){
console.log(111);
clearInterval(interval);
}
})();
</script>
</body>
</html>
效果:
关于“php怎么自定义报错页面”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。
亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。