php描述錯誤是php程式本身的問題,一般是由非法的語法,環境問題導致的,其解決方法:1、建立一個PHP範例檔案;2、執行php程式碼為「$a= 0;echo 4/$a;」;3、使用catch捕獲異常或透過「set_error_handler」函數進行錯誤處理即可。
本教學作業系統:Windows10系統、PHP8.1版、Dell G3電腦。
php描述錯誤是什麼意思
PHP錯誤屬於php程式本身的問題,一般是由非法的語法,環境問題導致的,使得編譯器無法通過檢查,甚至無法運作的情況。平常遇到的warming、notice都是錯誤,只是等級不同而已。
PHP異常處理機制借鏡了java c 等,但PHP的異常處理機制是不健全的。異常處理機制目的是將 程式正常執行的程式碼 與 出現異常如何處理的程式碼分開。
PHP是無法自動捕獲異常的(絕大多數),只有主動拋出異常並捕捉。也就是說,對於異常,是可預見的。
以除數為0為例,看看PHP是如何處理的
<?php $a = 0; try { echo 4/$a; } catch (Exception $e){ echo $e->getMessage(); } //报错,PHP是无法自动捕获异常的,必须手动抛出 ?>
#下面手動拋出
<?php $a = 0; try { if($a == 0){ throw new Exception('除数不能为0', 1); } echo 4/$a;//不会执行 } catch (Exception $e){ echo $e->getMessage(); } ?>
可以看到,catch捕獲到了異常。
PHP中對於異常的機制使用,一般用於業務邏輯判斷上面,當業務邏輯不正常時,進行特殊處理。
下面看一下PHP錯誤處理機制。 PHP提供了set_error_handler()函數進行錯誤處理。當錯誤發生時,set_error_handler會統一處理錯誤。
如下
<?php $a = 0; function handle($errno,$errstr,$errfile,$errline){ echo $errfile; } set_error_handler('handle'); echo 4/$a; echo PHP_EOL; echo 'hehe'; ?>
上面的echo 4/$a;發生了錯誤,此時進入了錯誤處理函數handle中,進行錯誤處理,一般我們在handle中加入die,終止執行。
以上是php描述錯誤是什麼意思的詳細內容。更多資訊請關注PHP中文網其他相關文章!