ฟังก์ชัน catch
ฟังก์ชัน catch เป็นส่วนหนึ่งของบล็อก try-catch และมีหน้าที่สำหรับดักจับข้อยกเว้นที่อาจถูกโยนออกมาในบล็อก try เมื่อเกิดข้อยกเว้นขึ้น การทำงานของโค้ดจะเปลี่ยนไปยังบล็อก catch ที่ตรงกัน ซึ่งคุณสามารถจัดการข้อผิดพลาดได้ที่นั่น
ไวยากรณ์
try {
// โค้ดที่อาจโยนข้อยกเว้น
} catch (ExceptionType $e) {
// การจัดการข้อยกเว้น
}
ตัวอย่าง
ตัวอย่างง่ายๆ ในการจัดการข้อยกเว้น:
<?php
try {
throw new Exception('Something went wrong');
} catch (Exception $e) {
echo 'Caught exception: ' . $e->getMessage();
}
?>
ผลลัพธ์จากการรันโค้ด:
'Caught exception: Something went wrong'
ตัวอย่าง
การจัดการข้อยกเว้นประเภทต่างๆ:
<?php
try {
if (rand(0, 1)) {
throw new InvalidArgumentException('Invalid argument');
} else {
throw new RuntimeException('Runtime error');
}
} catch (InvalidArgumentException $e) {
echo 'Invalid argument: ' . $e->getMessage();
} catch (RuntimeException $e) {
echo 'Runtime error: ' . $e->getMessage();
} catch (Exception $e) {
echo 'Generic exception: ' . $e->getMessage();
}
?>
ผลลัพธ์ที่เป็นไปได้จากการรันโค้ด:
'Invalid argument: Invalid argument'
หรือ
'Runtime error: Runtime error'