Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> PHP

Cơ chế bắt ngoại lệ không bắt biến (Non-Capturing Exception Catches) trong PHP 8

Ở các phiên bản PHP trước, nếu muốn bắt ngoại lệ, cần lưu vào biến để kiểm tra biến đó có được dùng hay không.

Trước PHP 8, khối catch bắt buộc phải gán ngoại lệ (do khối try ném) vào một biến.

Ví dụ: Bắt ngoại lệ có gán biến trong PHP

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

Giải thích - Trong chương trình trên, ngoại lệ được bắt bởi khối catch vào biến $e. Biến $e có thể chứa thông tin về ngoại lệ như mã, thông điệp, v.v.

PHP 8 giới thiệu non-capturing catches (bắt ngoại lệ không gán biến). Bây giờ có thể bắt ngoại lệ mà không cần gán vào biến. Có thể bỏ qua biến.

Ví dụ: Non-Capturing Exception Catches trong PHP 8

<?php 
try {
    throw new Exception('hello');
}
catch (Exception) { // Biến $e bị bỏ qua }
?>

Lưu ý: Trong chương trình trên, không dùng biến $e để lưu thông tin ngoại lệ.