কম্পিউটার

একাধিক ক্যাচ ব্লকের সাথে পিএইচপি ব্যতিক্রম হ্যান্ডলিং


পরিচয়

PHP বিভিন্ন ব্যতিক্রম কেস পরিচালনা করার জন্য একটি চেষ্টা ব্লক অনুসরণ করে ক্যাচ ব্লকের একটি সিরিজের অনুমতি দেয়। পূর্বনির্ধারিত ব্যতিক্রম এবং ত্রুটির পাশাপাশি ব্যবহারকারীর সংজ্ঞায়িত ব্যতিক্রমগুলি পরিচালনা করার জন্য বিভিন্ন ক্যাচ ব্লক ব্যবহার করা যেতে পারে।

উদাহরণ

নিম্নলিখিত উদাহরণ DivisioByZeroError, TypeError, ArgumentCountError এবং InvalidArgumentException শর্তগুলি প্রক্রিয়া করতে ক্যাচ ব্লক ব্যবহার করে। সাধারণ ব্যতিক্রম পরিচালনা করার জন্য একটি ক্যাচ ব্লকও রয়েছে।

উদাহরণ

<?php
declare(strict_types=1);
function divide(int $a, int $b) : int {
   return $a / $b;
}
$a=10;
$b=0;
try{
   if (!$b) {
      throw new DivisionByZeroError('Division by zero.');}
      if (is_int($a)==FALSE || is_int($b)==FALSE)
         throw new InvalidArgumentException("Invalid type of arguments");
         $result=divide($a, $b);
         echo $result;
      }
      catch (TypeError $x)//if argument types not matching{
         echo $x->getMessage();
   }
   catch (DivisionByZeroError $y) //if denominator is 0{
      echo $y->getMessage();
}
catch (ArgumentCountError $z) //if no.of arguments not equal to 2{
   echo $z->getMessage();
}
catch (InvalidArgumentException $i) //if argument types not matching{
   echo $i->getMessage();
}
catch (Exception $ex) // any uncaught exception{
   echo $ex->getMessage();
}
?>

আউটপুট

শুরুতে, যেহেতু হর হল ০, বিভাজক ০ ত্রুটি প্রদর্শিত হবে

Division by 0

$b=3 সেট করুন যা TypeError সৃষ্টি করবে কারণ বিভাজন ফাংশন পূর্ণসংখ্যা প্রদান করবে বলে প্রত্যাশিত কিন্তু বিভাজনের ফলে ফ্লোট হয়

Return value of divide() must be of the type integer, float returned

$res=divide($a); এর ফলে ArgumentCountError হবে

Too few arguments to function divide(), 1 passed in C:\xampp\php\test1.php on line 13 and exactly 2 expected

আর্গুমেন্টের একটি যদি পূর্ণসংখ্যা না হয়, তাহলে এটি InvalidArgumentException এর একটি কেস

Invalid type of arguments

  1. জাভাতে ট্রাই ক্যাচ দিয়ে ব্যতিক্রম হ্যান্ডলিং

  2. C++ এ ব্যতিক্রম হ্যান্ডলিং বেসিক

  3. জাভাতে মেথড ওভাররাইডিং সহ ব্যতিক্রম হ্যান্ডলিং।

  4. পাইথন 'সহ' বিবৃতি ব্যবহার করার সময় কিভাবে একটি ব্যতিক্রম ধরবেন?