ভূমিকা
ArithmeticError ক্লাস Error ক্লাস থেকে ইনহেরিট করা। এই টাইপের এরর কিছু ম্যাথমেটিক্যাল অপারেশন করার সময় ঘটতে পারে। এর একটি সিনেরিও হলো বিটওয়াইজ শিফট অপারেশন নেগেটিভ অমাউন্ট দিয়ে করার চেষ্টা। এই এররও থ্রো হয় যখন intdiv() ফাংশন কল এর ফলাফল এমন হয় যে সেটি ইন্টিজারের বৈধ সীমার বাইরে চলে যায়।
ArithmeticError উদাহরণ
নিচের উদাহরণে, বাইনারি শিফট অপারেটর নেগেটিভ অপারেন্ড দিয়ে ব্যবহার করার চেষ্টা করা হয়েছে। এটি ArithmeticError তৈরি করে।
উদাহরণ
<?php try { $a = 10; $b = -3; $result = $a << $b; } catch (ArithmeticError $e) { echo $e->getMessage(); } ?>আউটপুট
এটি নিচের ফলাফল দেবে—
Bit shift by negative number
যদি intdiv() ফাংশন কল এর ফলাফল অবৈধ ইন্টিজার হয়, ArithmeticError থ্রো হয়। নিচের উদাহরণে দেখানো হয়েছে, PHP-এ ন্যূনতম অনুমোদিত ইন্টিজার (PHP_INT_MIN) -1 দিয়ে ভাগ করা যাবে না।
উদাহরণ
<?php try { $a = PHP_INT_MIN; $b = -1; $result = intdiv($a, $b); echo $result; } catch (ArithmeticError $e) { echo $e->getMessage(); } ?>আউটপুট
এটি নিচের ফলাফল দেবে—
Division of PHP_INT_MIN by -1 is not an integer