php自定義報(bào)錯(cuò)頁面的方法:1、在配置文件中添加錯(cuò)誤頁面模板信息;2、將配置信息放入當(dāng)前模型的/Conf/config.php中;3、在當(dāng)前模型的View目錄下創(chuàng)建Public文件夾,并在其中自定義錯(cuò)誤頁面即可。
本文操作環(huán)境:windows10系統(tǒng)、php 7&&thinkphp 5、thinkpad t480電腦。
ThinkPHP 作為一款輕量級的PHP開發(fā)框架,擁有豐富的文檔,而且相對于其他框架來說更加容易上手。因此我們這里選擇thinkphp來實(shí)現(xiàn)自定義報(bào)錯(cuò)頁面。
ThinkPHP 本身為我們提供了自帶的錯(cuò)誤頁面、異常頁面等信息提示頁面,比如下面的代碼會出現(xiàn)這樣的提示:
$this->error('驗(yàn)證碼錯(cuò)誤!');
由于自帶的頁面并不美觀,所以我們需要自定義這些頁面,ThinkPHP 為我們提供了自定義提示頁面這樣一種功能。
在配置文件中添加如下配置信息:
/* 錯(cuò)誤頁面模板 */ 'TMPL_ACTION_ERROR' => MODULE_PATH.'View/Public/error.html', // 默認(rèn)錯(cuò)誤跳轉(zhuǎn)對應(yīng)的模板文件 'TMPL_ACTION_SUCCESS' => MODULE_PATH.'View/Public/success.html', // 默認(rèn)成功跳轉(zhuǎn)對應(yīng)的模板文件 'TMPL_EXCEPTION_FILE' => MODULE_PATH.'View/Public/exception.html',// 異常頁面的模板文件
把這段配置信息放入到當(dāng)前模型的 /Conf/config.php 中,然后在當(dāng)前模型的 View 目錄下創(chuàng)建 Public 文件夾,并在里面自定義 error.html success.html 及 exception.html 即可。
下面是一個(gè)簡單的錯(cuò)誤頁面模板:
<!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>跳轉(zhuǎn)提示</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> 秒后頁面將自動跳轉(zhuǎn) </p> <div> <a id="href" id="btn-now" href="<?php echo($jumpUrl); ?>">立即跳轉(zhuǎn)</a> <button id="btn-stop" type="button" onclick="stop()">停止跳轉(zhuǎn)</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>
效果:
推薦學(xué)習(xí):php培訓(xùn)