PHP:顯示錯誤資訊

2021/11/04 1,084 3 網站技術 , 資訊安全 , PHP

在預設的 PHP 環境中,因為資安的因素,錯誤資訊是被隱藏的,如果網頁哪邊撰寫錯誤,可能會直接給出一個空白頁面,因此在偵錯上就會比較麻煩,為了方便暫時進行開發作業,我們可以用簡單的兩種方式達成強制顯示錯誤資訊的效果。

php.ini 中的兩個設定值可能會造成錯誤資訊是隱藏的,這在伺服器上能保障資訊安全:

display_errors = Off
error_reporting = Off

其中一個設定值為 off,就無法顯示錯誤資訊囉!這邊建議在開發上直接用修改 PHP 或添加 .htaccess 的方式達到強制顯示錯誤資訊的效果,這樣可以針對局部開啟錯誤資訊提示,而無須動到全局設定檔!前者是針對單一檔案的開發偵錯、後者是針對指定目錄中檔案的開發偵錯。

方法一:修改 PHP 檔案

針對單一檔案,當然您可以透過 include 的方式讓多個檔案都能進行偵錯。

<?php
ini_set('display_errors','1');
error_reporting(E_ALL);
?>

方法二:添加 .htaccess

針對指定目錄中的所有檔案進行偵錯工作。

php_flag display_errors on
php_value error_reporting -1

依照您的需求選擇最適合的方法來做就可以啦!

如果您想要在整個 PHP 全局環境中開啟錯誤資訊提示,必須修改 php.ini 中的兩個設定值,首先要先開啟錯誤資訊提示功能:

display_errors = On

再來以下設定值二選一:

error_reporting E_ALL # 輸出所有種類之錯誤
error_reporting E_ALL & ~E_NOTICE # 除了 Notice 外,輸出其他種類之錯誤

重新啟動後,整個 PHP 環境就能看到錯誤資訊提示啦!


▲ PHP 錯誤~示意圖(文章精選圖片)。

贊助廣告 ‧ Sponsor advertisements

留言區 / Comments

萌芽論壇