PHP提示Notice: Undefined variable的解決辦法
PHP默認(rèn)配置會(huì)報(bào)這個(gè)錯(cuò)誤,我的PHP版本是5.2.13,存在這個(gè)問(wèn)題:
Notice: Undefined variable
這就是將警告在頁(yè)面上打印出來(lái),雖然這是有利于暴露問(wèn)題,但實(shí)現(xiàn)使用中會(huì)存在很多問(wèn)題。
需要設(shè)置顯示錯(cuò)誤級(jí)別,來(lái)解決問(wèn)題。
網(wǎng)絡(luò)上的通用解決辦法是修改php.ini的配置:
解決方法:
1) error_reporting設(shè)置:
找到error_reporting = E_ALL
修改為error_reporting = E_ALL & ~E_NOTICE
2) register_globals設(shè)置:
找到register_globals = Off
修改為register_globals = On
我發(fā)現(xiàn)在php代碼中直接使用
error_reporting(E_ALL & ~E_NOTICE);
可以解決這個(gè)問(wèn)題,小技巧記一下,呵呵。
以下是補(bǔ)充:
Notice: Undefined variable: email in D:\PHP5\ENOTE\ADDNOTE.PHP on line 9
Notice: Undefined variable: subject in D:\PHP5\ENOTE\ADDNOTE.PHP on line 9
Notice: Undefined variable: comment in D:\PHP5\ENOTE\ADDNOTE.PHP on line 9
........
其實(shí)以上就是未定義變量,我們就直接判斷變量的代碼導(dǎo)致。
本來(lái)php是不需要定義變量的,但是出現(xiàn)這種情況應(yīng)該怎么辦呢?
只要在C:\WINDOWS找出php.ini的
在php.ini中的302行 error_reporting = E_ALL
修改成
error_reporting = E_ALL & ~E_NOTICE再重啟apache2.2就行了
解決方法:修改php.ini
將: error_reporting = E_ALL
修改為:error_reporting = E_ALL & ~E_NOTICE
如果什么錯(cuò)誤都不想讓顯示,直接修改:
display_errors = Off
如果你沒有php.ini的修改權(quán)限,可在php頭部加入
ini_set("error_reporting","E_ALL & ~E_NOTICE");
即可
我們知道在 php 中,變量通常是不需要定義直接使用的,但有的時(shí)候因?yàn)?php 環(huán)境的問(wèn)題會(huì)出現(xiàn)各種各樣奇奇怪怪的事情,今天在調(diào)試程序的時(shí)候直接提示 Notice: Undefined variable 的錯(cuò)誤,這是因?yàn)橛械淖兞繘]有定義造成的,也是暈了,好吧,這種問(wèn)題直接一句屏蔽誤句就搞定了。
直接在程序的最頂端插入一句 error_reporting(0); 相信就不會(huì)再暴露這樣的問(wèn)題了,也不耽誤程序的運(yùn)行,當(dāng)然這個(gè)只是應(yīng)急的方法,我們還是要好好檢查程序哪里出現(xiàn)的問(wèn)題,然后對(duì)癥下藥,對(duì)于直接屏蔽問(wèn)題夏日博客再總結(jié)幾種方法吧。
php.ini 配置文件中的修改
在php.ini中的302行 error_reporting = E_ALL 修改成 error_reporting = E_ALL & ~E_NOTICE再重啟apache2.2就行了,如果什么錯(cuò)誤都不想讓顯示,直接修改:display_errors = Off
php文件中的修改
如果你沒有php.ini的修改權(quán)限,可在php頭部加入 ini_set("error_reporting","E_ALL & ~E_NOTICE"); 或者 error_reporting(0);//xiariboke.com 即可。
一般情況下直接建議在 php 文件中進(jìn)行添加,這種方法簡(jiǎn)單,不用去修改服務(wù)端的 php.ini 了。
- php 出現(xiàn)Strict Standards: Only variables should be passed by reference in的解決方法
- PHP中的print_r 與 var_dump 輸出數(shù)組
- php中g(shù)et_object_vars()方法用法實(shí)例
- PHP中echo,print_r與var_dump區(qū)別分析
- PHP異常Parse error: syntax error, unexpected T_VAR錯(cuò)誤解決方法
- php var_export與var_dump 輸出的不同
- php輸出echo、print、print_r、printf、sprintf、var_dump的區(qū)別比較
- php中var_export與var_dump的區(qū)別分析
- PHP var關(guān)鍵字相關(guān)原理及使用實(shí)例解析
相關(guān)文章
PHP使用pear實(shí)現(xiàn)mail發(fā)送功能 windows環(huán)境下配置pear
這篇文章主要介紹在 windows環(huán)境下如何配置pear,PHP使用pear實(shí)現(xiàn)mail發(fā)送功能,感興趣的小伙伴們可以參考一下2016-04-04將FCKeditor導(dǎo)入PHP+SMARTY的實(shí)現(xiàn)方法
這篇文章主要介紹了將FCKeditor導(dǎo)入PHP+SMARTY的實(shí)現(xiàn)方法,涉及整合FCKeditor與SMARTY的技巧,非常具有實(shí)用價(jià)值,需要的朋友可以參考下2015-01-01php觀察者模式應(yīng)用場(chǎng)景實(shí)例詳解
這篇文章主要介紹了php觀察者模式應(yīng)用場(chǎng)景,結(jié)合完整實(shí)例形式詳細(xì)分析了php觀察者模式的具體定義與使用技巧,需要的朋友可以參考下2017-02-02PHP中spl_autoload_register()函數(shù)用法實(shí)例詳解
這篇文章主要介紹了PHP中spl_autoload_register()函數(shù)用法,結(jié)合實(shí)例形式分析了__autoload函數(shù)及spl_autoload_register函數(shù)的相關(guān)使用技巧,需要的朋友可以參考下2016-07-07