365 of 410 menu

คำสั่ง throw

คำสั่ง throw ใช้สำหรับการโยนข้อยกเว้นอย่างชัดเจนใน PHP มันรับพารามิเตอร์หนึ่งตัว - ออบเจ็กต์ข้อยกเว้น ซึ่งต้องเป็นอินสแตนซ์ของคลาส ที่สืบทอดมาจากคลาสพื้นฐาน Exception เมื่อเรียกใช้ฟังก์ชันนี้ การทำงานของโค้ดปัจจุบัน จะหยุดทันที และ PHP จะพยายามค้นหาบล็อก catch ที่เกี่ยวข้องเพื่อจัดการกับข้อยกเว้น

ไวยากรณ์

throw new ExceptionClass(message, code, previous);

ตัวอย่าง

ตัวอย่างง่ายๆ ของการสร้างข้อยกเว้น:

<?php $age = -5; if ($age < 0) { throw new Exception('อายุไม่สามารถเป็นค่าลบได้'); } ?>

ผลลัพธ์จากการรันโค้ด:

Fatal error: Uncaught Exception: อายุไม่สามารถเป็นค่าลบได้

ตัวอย่าง

ตัวอย่างพร้อมการจัดการข้อยกเว้น:

<?php try { $res = 10 / 0; if (is_infinite($res)) { throw new Exception('การหารด้วยศูนย์'); } } catch (Exception $e) { echo 'ข้อผิดพลาด: ' . $e->getMessage(); } ?>

ผลลัพธ์จากการรันโค้ด:

'ข้อผิดพลาด: การหารด้วยศูนย์'

ตัวอย่าง

การใช้ข้อยกเว้นแบบกำหนดเอง:

<?php class MyCustomException extends Exception {} try { throw new MyCustomException('ข้อความข้อผิดพลาดแบบกำหนดเอง'); } catch (MyCustomException $e) { echo 'จับข้อผิดพลาดแบบกำหนดเองได้: ' . $e->getMessage(); } ?>

ผลลัพธ์จากการรันโค้ด:

'จับข้อผิดพลาดแบบกำหนดเองได้: ข้อความข้อผิดพลาดแบบกำหนดเอง'

ดูเพิ่มเติม

  • โครงสร้าง try,
    ซึ่งกำหนดบล็อกโค้ดสำหรับการจัดการข้อยกเว้น
  • โครงสร้าง catch,
    ซึ่งดักจับและจัดการข้อยกเว้น
  • คลาส Exception,
    ซึ่งเป็นคลาสพื้นฐานสำหรับข้อยกเว้นทั้งหมด
ไทย
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣTürkmenTürkçeЎзбекOʻzbekTiếng Việt
เราใช้คุกกี้สำหรับการทำงานของเว็บไซต์ การวิเคราะห์ และการปรับเนื้อหาให้เหมาะสมส่วนบุคคล การประมวลผลข้อมูลเกิดขึ้นตาม นโยบายความเป็นส่วนตัว.
ยอมรับทั้งหมด ปรับแต่ง ปฏิเสธ