Giới thiệu
Lớp ArithmeticError kế thừa từ Error. Lỗi này xảy ra khi thực hiện một số phép toán học. Ví dụ: dịch bit (bitwise shift) với số âm. Lỗi cũng ném khi gọi intdiv() cho kết quả vượt biên giới hạn integer.
Ví dụ ArithmeticError
Thử dùng toán tử dịch bit với toán hạng âm. Kết quả ArithmeticError.
Ví dụ
<?php try { $a = 10; $b = -3; $result = $a << $b; } catch (ArithmeticError $e) { echo $e->getMessage(); } ?>Kết quả
Bit shift by negative number
Nếu gọi intdiv() cho integer không hợp lệ, ArithmeticError ném ra. Ví dụ dưới, integer nhỏ nhất PHP (PHP_INT_MIN) không chia -1 được:
Ví dụ
<?php try { $a = PHP_INT_MIN; $b = -1; $result = intdiv($a, $b); echo $result; } catch (ArithmeticError $e) { echo $e->getMessage(); } ?>Kết quả
Division of PHP_INT_MIN by -1 is not an integer