多多色-多人伦交性欧美在线观看-多人伦精品一区二区三区视频-多色视频-免费黄色视屏网站-免费黄色在线

國內最全IT社區平臺 聯系我們 | 收藏本站
阿里云優惠2
您當前位置:首頁 > php開源 > php教程 > 正確理解PHP程序錯誤信息的表示含義

正確理解PHP程序錯誤信息的表示含義

來源:程序員人生   發布時間:2014-05-08 00:38:20 閱讀次數:2414次
我們編寫程序時,無論怎樣小心謹慎,犯錯總是在所難免的。這些錯誤通常會迷惑PHP編譯器。如果開發人員無法了解編譯器報錯信息的含義,那么這些錯誤信息不僅毫無用處,還會常常讓人感到沮喪。

編譯PHP腳本時,PHP編譯器會盡其所能報告它遇到的第一個問題。這樣就產生一個問題:只有當錯誤出現時,PHP才能將它識別出來(本文后面對此問題 進行了詳細描述)。正是由于這個緣故,編譯器指出出錯的那行,從表面上看來可能語法正確無誤,或者可能是根本就不存在的一行!

更好地理解錯誤信息可以大大節省確定并改正錯誤內容所花費的時間。因此,在本文中,我將努力闡明多種不同類型的PHP報錯信息,以及在開發過程中如何正確理解各種報錯信息的含義。

本文中所講述的內容與您所應用的PHP的版本無關,因為本文所描述的各種錯誤并不限定于某一特殊版本的特定錯誤。另外我們假定您是一位初級或者中級程序員,并已經從事編程工作有半年或一年的時間。編譯器的工作方式

要搞清楚編譯器為什么會報告某一行上存在錯誤,首先必須明確編譯器解析PHP代碼的機制。我并不打算在本文中對此進行詳細論述,但是,我們將會討論一些更易于引發錯誤的簡單概念。

變量聲明

如果在一條語句中聲明一個變量,具體方式如下所示:

$variable = 'value';

編譯器首先求出語句右半部分的值(即等號右邊的所有內容)。在一些編程書籍中,將此表示為語句的 RHS (右半部分)。恰恰正是語句的這一部分常常會引發錯誤。如果使用的語法不正確,就會出現解析錯誤。

解析錯誤

Parse error:解析錯誤,unexpected T_WHILE in c:program filesapache groupapachehtdocsscript.php on line 19

每次確定了前一錯誤時,解析錯誤一個接一個地不斷出現。因為PHP在第一個解析錯誤之后就停止執行腳本,調試并糾正這一系列的錯誤往往會讓人覺得特別厭煩。

而且,解析錯誤具有很少的信息,幾乎不報告錯誤所在的行號。具體原因就是當出現錯誤時,編譯器判定好幾行的語法看起來應該是有效的,直至遇到無效的語法,最可能的情形就是表達式中使用了預定義的字詞,例如;

while = 10; // Bad ? while 就是一個預定義字詞,不能分配給一個值

預定義的字詞包括 while、function等,如果PHP使用 uses to evaluate your code. 您不能使用這些預定義字詞來命名變量,而且如果您非要這樣做的話,PHP就會報出更多的錯誤,這是您無法忍受。

關于這個問題,下面的示例可能會對您有所幫助。請咨詢閱讀一下下面所示的PHP 代碼:

$b = "somevalue" if($b == "somevalue"){ print "Hello world!"; } ?>

錯誤位于"$b ="一行(在語句的末端缺少分號),所以錯誤應該是"解析錯誤:第3行缺少分號"對吧?而不應該依據解析器判定的:

Parse error: parse error, unexpected T_IF in c:program filesapachegroupapachehtdocsereg2.php on line 4 字串6

在第4行,if() 語句的語法是正確的。那么,編譯器是被什么給搞糊涂了呢?線索就是"unexpected T_IF" 部分。出現 "unexpected T_???"錯誤時,它所表示的含義為:編譯器發現在預定義字不應該出現的位置出現。T_IF 代表 if(), T_WHILE 代表 while(), T_FOR 代表 for()等。

值得慶幸的是,一些錯誤的原因也很簡單:

語句沒有使用分號(;)結束,比如上面的示例。字符串中缺少引號。

其他一些常見的錯誤

我見過的最常見的錯誤就是,當沒有使用大括號( } )結束一個函數或者一個循環時出現的錯誤,這很可能是最常見,最讓人煩的錯誤。具體代碼如下:
生活不易,碼農辛苦
如果您覺得本網站對您的學習有所幫助,可以手機掃描二維碼進行捐贈
程序員人生
------分隔線----------------------------
分享到:
------分隔線----------------------------
關閉
程序員人生
主站蜘蛛池模板: 国内自拍在线观看 | 美国福利片 | 夜夜爽www| 手机在线看片福利 | 国产精品嫩草影院视频 | 国产五区 | 精品福利一区二区免费视频 | 欧美日韩免费大片 | 搞av网| 一区二区中文字幕在线观看 | 久久久成人影院 | 羞羞视频免费观看网站 | 久久久久亚洲国产 | 精品国产高清毛片 | 国产精品视频第一区二区 | 国产日韩精品一区二区在线观看播放 | 久久婷婷人人澡人人爱91 | 亚洲欧洲无码一区二区三区 | 日韩欧美亚洲在线 | 亚洲一区二区三区精品视频 | 国产成人乱码一区二区三区在线 | 热久久国产欧美一区二区精品 | 欧洲午夜视频 | 欧美 日韩 亚洲 中文字幕 一区 | 岛国视频在线播放 | 久久精品一区二区三区不卡牛牛 | 一区二区视频在线观看免费的 | 国产一区二区在线视频观看 | 性欧美在线视频 | 在线h网站 | 亚洲国产成人在线观看 | 美国毛片亚洲社区在线观看 | 免费叼嘿视频 | 国产美女网站视频 | 欧美一级视频 | 看毛片网站 | 级毛片| 波多野结衣在线观看一区二区三区 | 国产极品嫩模在线观看91精品 | 美国一级毛片在线观看 | 国产男人女人做性全过程视频 |