我把error_reporting設成 E_ALL了.
在讀數據時 如$row['name']時
會出現很多Notice: Undefined index: 錯誤,
應該怎麼辦? error_reporting(E_ALL & ~ E_NOTICE ) 這樣嗎?
Undefined index:是指你代碼裡存在:“變量還未定義、賦值就使用”錯誤,這個不是致命錯誤,不會讓你php代碼運行強行中止,但是有潛在出問題危險,因此建議修改~~~~
notice內容都是這類不很影響使用非致命問題
用E_ALL & ~ E_NOTICE可以關閉notice顯示,不過,建議還是改代碼更好一點:)
代碼總是寫規范一點好,將來可以少出問題啊:)
開開這個notice顯示,對於調錯誤也很有幫助~~~~
如果你$row是通過 $row = mysql_fetch_array($result)來的,
而echo $row['name']的時候又出現了Notice: Undefined index: 的問題,那麼就有可能是:
1, SQL語句有錯,沒有讀出name這個字段裡的值,
2. SQL語句執行失敗,什麼值都沒讀出來
3. SQL即沒錯也沒失敗,但是沒有查詢到符合條件的紀錄,自然也就沒有$row['name']
4. 其他
notice一般提示關於與執行代碼沒有直接關系的錯誤,但不要忘記,notice有時會返回一些多余的錯誤信息