本文實例講述了Laravel5框架自定義錯誤頁面配置操作。分享給大家供大家參考,具體如下:
composer create-project --prefer-dist laravel/laravel lar5Pro 5.5.*
框架: Laravel 5.5
report
和 render
,其中的 render
方法會將異常渲染到 HTTP 響應中public function render($request, Exception $exception) { /* 錯誤頁面 */ if ($exception) { //TODO Laravel5.5 框架中 Exception 類不存在 getStatusCode()方法,或許只能支持前面的版本! //$code = $exception->getStatusCode(); $code = FlattenException::create($exception)->getStatusCode(); return response()->view('error.' . $code, [], $code); } return parent::render($request, $exception); }
【分析】
經過對框架源碼的查看發現,我們是通過實例化
FlattenException
類來獲得請求狀態碼的,根據提供的測試類FlattenExceptionTest
,從而得出了上述的代碼,建議可以閱讀下源代碼以做比較
resources/views/error/
目錄下創建錯誤頁面404.blade.php
中編輯設計自己的 404頁面404.blade.php
源代碼,僅做參考!DOCTYPE html> html lang="en"> head> meta charset="UTF-8"> title>404頁面/title> style> #box{ margin: 0 auto; width: 540px; height: 540px; } p{ margin-bottom: 60px; width: 540px; height: 20px; text-align: center; line-height: 20px; } #mes{ font-size: 30px; color: red; } .hint{ color: #999; } a{ color: #259AEA; text-decoration:none } /style> script> var i = 5; var intervalID = setInterval("fun()", 1000); function fun() { if (i == 0) { window.location.href = "/"; clearInterval(intervalID); } document.getElementById("mes").innerHTML = i; i--; } /script> /head> body> div id="box"> img src="{{ asset('images/error/404.jpg') }}" alt="404"> p>將在 span id="mes">5/span> 秒鐘后返回 a href="{{ url('/') }}" rel="external nofollow" >首頁/a>/p> p class="hint">非常抱歉 - 您可能輸入了錯誤的網址,或者該網頁已刪除或移動/p> /div> /body> /html>
更多關于Laravel相關內容感興趣的讀者可查看本站專題:《Laravel框架入門與進階教程》、《php優秀開發框架總結》、《php面向對象程序設計入門教程》、《php+mysql數據庫操作入門教程》及《php常見數據庫操作技巧匯總》
希望本文所述對大家基于Laravel框架的PHP程序設計有所幫助。