區分 PHP 中的異常和錯誤


以下討論錯誤和異常之間的差異。

  • 無法從錯誤中恢復。錯誤的唯一解決方案是終止執行。而我們能夠透過使用 try-catch 程式碼塊或者向呼叫方返回異常來從異常中恢復。
  • 無法透過 try-catch 程式碼塊來處理錯誤。即使你使用 try-catch 程式碼塊處理錯誤,它們在發生時,你的應用也不會恢復。另一方面,異常可以透過 try-catch 程式碼塊來處理,並能夠在異常發生時讓程式正常執行。
  • 異常與應用有關,而錯誤則與應用執行時所在的與環境有關。

示例

<?php
   try {
      $row->insert();
      $inserted = true;
      }
   catch (Exception $e)
      {
      echo "There was an error inserting the row - ".$e->getMessage();
      $inserted = false;
      }
      echo "Some more stuff";
?>

解釋

程式執行將繼續 - 因為你“捕獲”了異常。除非捕獲異常,否則異常將被視為一個錯誤。它將允許你在異常失敗後繼續執行程式。

示例

<?php
   $foo = [bar];
   echo $foo;
 ?>

解釋

程式執行將停止並提示 PHP 注意:陣列到字串的轉換。

更新於:2020 年 6 月 29 日

已瀏覽 2 千多次

開啟你的 職業 生涯

透過完成該課程取得認證

開始學習
廣告
© . All rights reserved.