Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> PHP

PHP DivisionByZeroError


แนะนำตัว

DivisionByZeroError class เป็นคลาสย่อยของ ArithmeticError ระดับ. ข้อผิดพลาดประเภทนี้เกิดขึ้นเมื่อการดำเนินการหารเกี่ยวข้องกับค่าของตัวส่วนเป็นศูนย์ สิ่งนี้สามารถเกิดขึ้นได้เมื่อตัวดำเนินการโมดูโล (% ) มี 0 เป็นโอเปอเรเตอร์ที่สอง และ intdiv () ฟังก์ชันที่มีอาร์กิวเมนต์ที่สองเป็น 0

ตัวอย่างข้อผิดพลาด DivisionByZero

ในตัวอย่างแรก เราพยายามทำการหารโมดูโลของ 10 และ 0 โดยใช้ % ตัวดำเนินการเพื่อกระตุ้นให้เกิด DivisionByZeroError

ตัวอย่าง

<?php
try {
   $a = 10;
   $b = 0;
   $result = $a%$b;
   echo $result;
}
catch (DivisionByZeroError $e) {
   echo $e->getMessage();
}
?>

ผลลัพธ์

สิ่งนี้จะทำให้เกิดผลลัพธ์ดังต่อไปนี้ -

Modulo by zero

หากโทรไปที่ intdiv() ฟังก์ชันที่มี 0 เนื่องจากอาร์กิวเมนต์ที่สองยังเพิ่ม DivisionByZeroError ดังนี้

ตัวอย่าง

<?php
try {
   $a = 10;
   $b = 0;
   $result = intdiv($a,$b);
   echo $result;
}
catch (DivisionByZeroError $e) {
   echo $e->getMessage();
}
?>

ผลลัพธ์

สิ่งนี้จะทำให้เกิดผลลัพธ์ดังต่อไปนี้ -

Division by zero

เจ้าหน้าที่กอง (/) มี 0 เป็นตัวส่วน แต่ไม่ทำให้เกิดข้อผิดพลาด แต่กลับทำให้เกิดคำเตือนเนื่องจากการหารส่งผลให้ค่าคงที่ PHP INF

ตัวอย่าง

<?php
try {
   $a = 10;
   $b = 0;
   $result = $a/$b;
   echo $result;
}
catch (DivisionByZeroError $e) {
   echo $e->getMessage();
}
?>

ผลลัพธ์

สิ่งนี้จะทำให้เกิดผลลัพธ์ดังต่อไปนี้ -

PHP Warning: Division by zero in C:\xampp\php\test.php on line 5
INF