標籤:c style blog a http width
關閉PHP錯誤指令碼提示是程式上線了必須做的一件事情,就是不管程式怎麼報錯我們都不能讓錯誤記錄檔在伺服器上給大家看到,下面我來總結兩種關閉PHP錯誤指令碼提示的具體方法
最簡單的辦法就是直接在php程式碼中加入下面代碼:
代碼如下:
error_reporting(E_ALL^E_NOTICE^E_WARNING);
可以關閉所有notice 和 warning 層級的錯誤。
把這個語句放在您指令碼的功用包含檔案中,通常為config.php 或者conn.php 中就可以控制輸出了。
當然我也也可以在php.ini中進行設定了方法如下
開啟PHP安裝目錄下的php.ini檔案
找到display_errors = On 修改為 display_errors = off
注意:如果你已經把PHP.ini檔案複製到windows目錄下,那麼必須同時把c:windows/php.ini裡的display_errors = On 修改為display_errors = off
PHP .ini中display_errors = Off失效的解決
問題:
PHP 設定檔案php .ini中明明已經設定display_errors = Off,但是在運行過程中,網頁上還是會出現錯誤資訊。
解決:
開啟PHP安裝目錄下的php.ini檔案
找到log_errors = off 修改為 log_errors = on
找到error_log = filename 修改為 error_log="D:PHPerrlogphp_error.log" (這裡的目錄和檔案名稱D:PHPerrlogphp_error.log隨便你取什麼)
注意:如果你已經把PHP.ini檔案複製到windows目錄下,那麼必須同時把c:windows/php.ini檔案.
此外php_error.log至少要有USER的修改和寫入權限,否則無法輸出錯誤記錄檔.
經常見到error_reporting(7)直意為:設定錯誤訊息回報的等級。
然而7=1+2+4
就是出錯時顯示1 E_ERROR 2 E_WARNING 4 E_PARSE
代碼如下:
<?php
//禁用錯誤報表
error_reporting(0);
//報告執行階段錯誤
error_reporting(E_ERROR | E_WARNING | E_PARSE);
//報告所有錯誤
error_reporting(E_ALL);
?>