本文為大家分享了php初學者常見的幾個錯誤及解決方法,希望能夠幫助到那些剛學習php的小夥伴們。
錯誤一:Parse error: syntax error, unexpected ...
這種錯誤是PHP解析器在解析時遇到了語法錯誤,直譯為:解析錯誤:語法錯誤,意料之外的...
原因及解決方法:
語法格式錯誤。例如:每一語句都應以英文分號結束,如果不寫分號或打成了中文分號,就會報這樣的錯誤。只要我們在寫程式碼的時候注意語法格式即可避免。
錯誤二:Fatal error: Uncaught Error: Call to undefined function...
這種錯誤表示程式碼在執行時遇到了致命錯誤,直譯為:未捕獲錯誤:呼叫了未定義的函數
原因及解決思路:
呼叫了未定義的函數。遇到這種錯誤,我們首先要查看報錯訊息,定位到錯誤代碼所在行,查看函數名稱是否拼字錯誤或自訂函數是否真的沒定義。
解決想法:
錯誤三:Notice: Array to string conversion in...
這個錯誤是初學者非常容易遇到的一個問題,它只是一個錯誤提示,並不影響整個程式碼的執行。直譯為:數組在第...行轉換成字串
解決思路:
這種錯誤一般是因為echo後面輸出了一個數組導致的,或者是數組作為字符串進行拼接運算時所導致的。 (php是弱型別語言,運算時會自動依照環境需求轉換資料型別)
我們只需要找到提示的那一行程式碼,將陣列提前處理好以後再進行字串運算即可。
錯誤四:Parse error: syntax error, unexpected '1' (T_LNUMBER), expecting variable
#原因及解決方法:
#定位到報錯的程式碼,查看變數或函數是否命名正確。
(學習影片分享:php影片教學)
錯誤五:Warning: mysqli_fetch_assoc() expects parameter 1 to be mysqli_result, boolean given ...
此錯誤直譯為:警告:mysqli_fetch_assoc函數期望參數1是mysqli的結果集,但是給了一個布林值。這個錯誤是警告錯誤,並不影響程式的執行。
這個錯誤通常出現在資料庫讀取結果集資料時,例如當我們寫好SQL語句從資料庫讀取資料時,本身應該會傳回結果集,再給結果集中讀取資料。但是,結果集卻是一個布林值,所以反推出極有可能是SQL語句寫錯了,導致執行出錯,結果集就成了執行結果false。
解決方法:
仔細檢查SQL語句,確認沒問題後再提交給伺服器執行。
錯誤六:Notice: Undefined variable:...
#此錯誤直譯為:提示:未定義變數a
原因及解決思路:
該錯誤一般出現在使用了未定義變數的情況下。遇到這種問題時,我們只需要仔細檢查變數的定義或拼字即可是否正確即可。
錯誤七:Notice: Undefined index: username in ...
#此錯誤直譯為:提示:未定義的索引:username
#原因及解決方法:
這種錯誤一般出現在使用了未定義的陣列元素的情況下。 php中的關聯數組可以使用鍵名存取值,同時在提示時也是按索引數組的方式提示,因此許多初學者會產生誤解。
我們只需要仔細檢查是不是陣列鍵名拼字錯誤或未定義即可。
錯誤八:亂碼
原因及解決方法:
php產生html程式碼時的字元集與瀏覽器預設顯示的字元集不同導致的。我們可以在php腳本最頂部添加響應頭聲明字元集。如:【header('Content-Type:text/html; charset=utf-8')】。
如果你也剛踏上php學習之旅,又遇到了很多無法解答的問題,可以參加php中文網15期線上直播班,與眾多小夥伴一起學習交流。
以上是php初學者常見的幾個錯誤及解決方法的詳細內容。更多資訊請關注PHP中文網其他相關文章!