本文目錄一覽:
- 1、php中出現「Warning: mysql_fetch_array(): …”什麼情況?
- 2、如何關閉php的notice和warning問題
- 3、php中怎麼隱藏warning
- 4、怎麼把mac上php這些煩人的warning去掉
- 5、php 如何關閉 Warning
- 6、php怎麼屏蔽warning
php中出現「Warning: mysql_fetch_array(): …”什麼情況?
Warning是警告,不是錯誤,只是你寫的代碼不怎麼規範,所以提醒你不該這麼寫。你的程序並沒有錯,能夠正常運行,所以可以忽略
隱藏警告辦法有兩個:第一個就是修改php.ini降低報錯等級,第二就是在程序里定義報錯等級了。
第一種辦法:在php.ini中找到:error_reporting = …,把它改為error_reporting = 0。修改後記得重啟Apache
第二種辦法:在代碼的前面加上error_reporting(0);
不過這樣就把所有錯誤信息都屏蔽了,一旦程序出錯你就只能得到一個空白的頁面。如果想讓程序輸出錯誤信息把0改為E_ERROR即可
如何關閉php的notice和warning問題
我的方法是找到你自己的php配置文件php.ini,用記事本打開,在該文件中找到error_reporting = E_ALL把該行代碼替換成error_reporting = E_ALL ~E_NOTICE ~E_STRICT
這樣就解決了這個問題了。如果還有不懂的可以去後盾人找找相關的教材看看,多看點以後不會的不就少了,希望對你有用。給個採納吧謝謝
php中怎麼隱藏warning
在可能會產生警告信息的函數前添加 @符號即可.
如 @mysql_connect…..
需要說明的是,這樣只是隱藏警告和錯誤信息,函數因錯誤產生的中斷不能被跳過.更像是”掩耳盜鈴”.
不建議使用這樣的方法,而是用 try…catch…捕獲異常,然後對異常進行 友好提示的封裝.
怎麼把mac上php這些煩人的warning去掉
配置錯誤信息回報的等級。
語法: int error_reporting(int [level]);
返回值: 整數
函數種類: PHP 系統功能內容說明本函數用來配置錯誤信息回報的等級,參數 level 是一個整數的位遮罩 (bitmask),見下表。
遮罩值 表示名稱1 E_ERROR2 E_WARNING4 E_PARSE8 E_NOTICE16 E_CORE_ERROR
32 E_CORE_WARNING
E_NOTICE 表示一般情形不記錄,只有程序有錯誤情形時才用到,例如企圖存取一個不存在的變量,或是呼叫 stat() 函數檢視不存在的文件。
E_WARNING 通常都會顯示出來,但不會中斷程序的執行。這對除錯很有效。例如:用有問題的正則表達式呼叫 ereg()。
E_ERROR 通常會顯示出來,亦會中斷程序執行。意即用這個遮罩無法追查到內存配置或其它的錯誤。
E_PARSE 從語法中解析錯誤。
E_CORE_ERROR 類似 E_ERROR,但不包括 PHP 核心造成的錯誤。
E_CORE_WARNING 類似 E_WARNING,但不包括 PHP 核心錯誤警告。
php 如何關閉 Warning
error_reporting(255);
是列出所有提示
error_reporting(0);
是不顯示所有提示
建議使用
error_reporting(7);
只顯示嚴重錯誤
1 E_ERROR 致命的運行時錯誤
2 E_WARNING 運行時警告(非致命性錯誤)
4 E_PARSE 編譯時解析錯誤
8 E_NOTICE 運行時提醒(經常是bug,也可能是有意的)
16 E_CORE_ERROR PHP啟動時初始化過程中的致命錯誤
32 E_CORE_WARNING PHP啟動時初始化過程中的警告(非致命性錯)
64 E_COMPILE_ERROR 編譯時致命性錯
128 E_COMPILE_WARNING 編譯時警告(非致命性錯)
256 E_USER_ERROR 用戶自定義的致命錯誤
512 E_USER_WARNING 用戶自定義的警告(非致命性錯誤)
1024 E_USER_NOTICE 用戶自定義的提醒(經常是bug,也可能是有意的)
2048 E_STRICT 編碼標準化警告(建議如何修改以向前兼容)
4096 E_RECOVERABLE_ERROR 接近致命的運行時錯誤,若未被捕獲則視同E_ERROR
6143 E_ALL 除E_STRICT外的所有錯誤(PHP6中為8191,即包含所有)
php怎麼屏蔽warning
諸如下面這些錯誤的提示:Warning: file_get_contents(/usr/local/tads/htdocs/XXXXXX/src/cache/countLoginnum.txt) [function.file-get-contents]: failed to open stream: No such file or directory in/usr/local/tads/htdocs/XXXXXXX/src/controllers/defaultController.php on line 43Warning: Cannot modify header information – headers already sent by (output started at /usr/local/tads/htdocs/XXXXXX/src/config/env.php:5) in/usr/local/taesdk/1.0/phplib3/src/base/core/TMWebResponse.class.php on line 332有的時候代碼的警告會導致整個項目無法運行,比如某個變量無對象的情況,若無影響,這時如果屏蔽警告,就可以使整個項目恢復正常運行。當然它的作用不在於這,而是在成品網站或做服務器時,不輸出錯誤信息可以減少被黑客攻擊的風險(對於一些容易出錯並且容易暴漏敏感數據的代碼,一般多在數據庫這塊吧),也能在出錯的情況下仍保持網站的美觀。至於在調試下,那這個錯誤提示信息還是比較有用的,可以在PHP頁面最前邊加上一句: error_reporting(E_ALL ~E_NOTICE);讓出錯時顯示錯誤信息。屏蔽的方法:
屏蔽PHP錯誤提示方法一、在有可能出錯的函數前加@,然後or die(“”) 如: @mysql_connect(…) or die(“Database Connect Error”)
屏蔽PHP錯誤提示方法二、編輯php.ini ,查找”display_errors =” ,將「=」後面的值改為”off。
屏蔽PHP錯誤提示方法三、在php腳本前加error_reporting(0),屏蔽所有錯誤提示。
例:
@$a = $b[‘a’]; //忽略@後面語句的錯誤
$a = @$b[‘a’]; //忽略@後面語句的錯誤,推薦使用這句。因為錯誤是在$b這個數組中發生的,所以@符號在$b前就可以了,這是錯誤真正發生的地方。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/239026.html