【Whoops 簡介】:開發環境中需要顯示錯誤,但是PHP預設顯示的錯誤訊息很難看,而且經常穿插在PHP指令碼的輸出裡,難以閱讀。然而 Whoops 可以改變這種情況,Whoops 是個現代的PHP元件,為PHP錯誤和異常提供了設計精美且易於閱讀的診斷頁面。
【多種格式】:Whoops 的強大還在於它能提供多種型別的錯誤輸出:文字,JSON,XML 等一共5種格式型別
【Packagist】:https://packagist.org/packages/filp/whoops
【GitHub】:https://github.com/filp/whoops
【安裝】:預設使用 Composer 進行安裝,若不會使用 Composer 請參考“【PHP Composer】安裝&使用“
composer require filp/whoops
【使用】:使用 Whoops 十分地簡單,只需將下列程式碼放到引導檔案中即可,這也是最重要的一點:想要捕獲所有的錯誤和異常就必須在程式的開頭就註冊元件,這樣即使是再複雜的框架也能捕獲到具體的錯誤資訊以及位置
$whoops = new \Whoops\Run;
$whoops->pushHandler(new \Whoops\Handler\PrettyPageHandler);
$whoops->register();
【示例】:在這個示例中我們先註冊 Whoops 元件,然後故意將程式碼寫錯,目的是為了演示 Whoops 的診斷頁面
<?php
# @ Composer 自動載入器
require 'vendor/autoload.php';
# @ Whoops 元件
$whoops = new \Whoops\Run;
$whoops->pushHandler(new \Whoops\Handler\PrettyPageHandler);
$whoops->register();
# @ PHPexcel 函式類呼叫
if( $_POST['EXCEL'] )
{
$objPHPExcel = APHPExcel_IOFactory::load($_POST['EXCEL']);
$sheetData = $objPHPExcel->getActiveSheet()->toArray(null,true,true,true);
# @ 輸出結果
var_dump($sheetData);
}
?>
【輸出】:
【其它格式】:如同上文所說 Whoops 還支援許多其它格式的錯誤輸出
# @ 預設診斷頁面
PrettyPageHandler
# @ 純本文資訊
PlainTextHandler
# @ 錯誤回撥
CallbackHandler
# @ JSON 輸出
JsonResponseHandler
# @ XML 輸出
XmlResponseHandler
【其它示例】:這裡簡單演示下 JSON & XML 格式的錯誤輸出
【JSON】:
# @ JSON 格式
$whoops->pushHandler(new \Whoops\Handler\JsonResponseHandler);
# @ JSON ERROR
{"error":{"type":"Whoops\\Exception\\ErrorException","message":"Class 'APHPExcel_IOFactory' not found","file":"D:\\wamp\\www\\Excel\\DealExcel.php","line":12}}
【XML】:
# @ XML 格式
$whoops->pushHandler(new \Whoops\Handler\XmlResponseHandler);
# @ XML ERROR
【Tips】:歡迎有興趣一起學習進步的朋友新增我的印象筆記賬號:note1071.38f6955@m.yinxiang.com,或者將你的印象筆記賬號發至我的郵箱:ms.work.note.dev@outlook.com