Ngoại lệ là vấn đề phát sinh khi chạy chương trình. Khi ngoại lệ xảy ra, code sau câu lệnh gây ra sẽ không chạy, PHP tìm khối catch phù hợp đầu tiên. Nếu không bắt được, PHP ném lỗi.Fatal Error "Uncaught Exception".
Cú pháp
try {
// code có thể gây ngoại lệ
throw new Exception();
} catch (Exception $e) {
// xử lý ngoại lệ
} finally {
// luôn chạy, có hay không ngoại lệ
}
Ví dụ
<?php
function printdata($data) {
try {
if ($data == 6) {
throw new Exception('Number is six.');
echo "\n After throw (không bao giờ chạy)";
}
} catch (Exception $e) {
echo "\n Exception Caught: " . $e->getMessage();
} finally {
echo "\n Finally block luôn chạy";
}
}
printdata(0); // không ném ngoại lệ
printdata(6); // ném ngoại lệ
?>
Kết quả
Finally block luôn chạy
Exception Caught: Number is six.
Finally block luôn chạy
Lưu ý
- Code phải nằm trong khối
tryđể bắt ngoại lệ. - Mỗi
trycần ít nhất mộtcatch. - Có thể dùng nhiều
catchcho các loại ngoại lệ khác nhau.