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 h1{ 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"><h1>提示信息!</h1><?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培训
以上就是php如何自定义报错页面的详细内容。