首頁 >後端開發 >PHP問題 >php描述錯誤是什麼意思

php描述錯誤是什麼意思

小老鼠
小老鼠原創
2023-04-26 16:41:041947瀏覽

php描述錯誤是php程式本身的問題,一般是由非法的語法,環境問題導致的,其解決方法:1、建立一個PHP範例檔案;2、執行php程式碼為「$a= 0;echo 4/$a;」;3、使用catch捕獲異常或透過「set_error_handler」函數進行錯誤處理即可。

php描述錯誤是什麼意思

本教學作業系統: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(&#39;除数不能为0&#39;, 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(&#39;handle&#39;);

echo 4/$a;
echo PHP_EOL;
echo &#39;hehe&#39;;
?>

上面的echo 4/$a;發生了錯誤,此時進入了錯誤處理函數handle中,進行錯誤處理,一般我們在handle中加入die,終止執行。

以上是php描述錯誤是什麼意思的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn