Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> PHP

Non-Capturing Exception Catches ทำงานอย่างไรใน PHP 8


ใน PHP เวอร์ชันก่อนหน้า หากเราต้องการตรวจจับข้อยกเว้น เราก็จำเป็นต้องเก็บมันไว้ในตัวแปรเพื่อตรวจสอบว่ามีการใช้ตัวแปรนั้นหรือไม่

ก่อน PHP 8 ในการจัดการบล็อกดักจับข้อยกเว้น เราจำเป็นต้องตรวจจับข้อยกเว้น (โยนโดยบล็อกการลอง) ไปยังตัวแปร

ตัวอย่าง:การดักจับข้อยกเว้นใน PHP

<?php
   function foo()
   {
      try{
         throw new Exception('Hello');
      }
      catch (Exception $e) {
         return $e->getMessage();
      }
   }
?>

คำอธิบาย − ในโปรแกรมด้านบนนี้ บล็อก catch ตรวจพบข้อยกเว้นของ ตัวแปร $e . ตอนนี้ ตัวแปร$e สามารถเก็บข้อมูลใด ๆ เกี่ยวกับข้อยกเว้นเป็นรหัส ข้อความ ฯลฯ

PHP 8 แนะนำการจับที่ไม่จับ ตอนนี้ เป็นไปได้ที่จะจับข้อยกเว้นโดยไม่ต้องจับกับตัวแปร ตอนนี้เราสามารถละเลยตัวแปรได้

ตัวอย่าง:Non- Capture Exception Catches ใน PHP 8

<?php
   try{
      throw new Exception('hello');
   }
   catch (Exception) { // $e variable omitted
}
?>

หมายเหตุ: ในโปรแกรมข้างต้น เราไม่ได้ใช้ $e ตัวแปรเพื่อเก็บข้อมูลข้อยกเว้น