throw কমান্ড

throw কমান্ডটি PHP-তে স্পষ্টভাবে এক্সেপশন নিক্ষেপ করতে ব্যবহৃত হয়। এটি একটি প্যারামিটার নেয় - একটি এক্সেপশন অবজেক্ট, যা অবশ্যই বেস ক্লাস Exception থেকে ইনহেরিট করা ক্লাসের একটি ইন্সট্যান্স হতে হবে। এই ফাংশন কল হলে কারেন্ট কোডের এক্সিকিউশন অবিলম্বে বন্ধ হয়ে যায়, এবং PHP এক্সেপশন হ্যান্ডেল করার জন্য মিলে যাওয়া catch ব্লক খুঁজে পেতে চেষ্টা করে।

সিনট্যাক্স

phpthrow new ExceptionClass(message, code, previous);

উদাহরণ

একটি এক্সেপশন জেনারেট করার সহজ উদাহরণ:

php<?php
  $age = -5;
  if ($age < 0) {
    throw new Exception('Age cannot be negative');
  }
?>

কোড এক্সিকিউট করার ফলাফল:

phpFatal error: Uncaught Exception: Age cannot be negative

উদাহরণ

এক্সেপশন হ্যান্ডেলিং সহ উদাহরণ:

php<?php
  try {
    $res = 10 / 0;
    if (is_infinite($res)) {
      throw new Exception('Division by zero');
    }
  } catch (Exception $e) {
    echo 'Error: ' . $e->getMessage();
  }
?>

কোড এক্সিকিউট করার ফলাফল:

php'Error: Division by zero'

উদাহরণ

কাস্টম এক্সেপশন ব্যবহার করা:

php<?php
  class MyCustomException extends Exception {}
  
  try {
    throw new MyCustomException('Custom error message');
  } catch (MyCustomException $e) {
    echo 'Custom error caught: ' . $e->getMessage();
  }
?>

কোড এক্সিকিউট করার ফলাফল:

php'Custom error caught: Custom error message'

আরও দেখুন

  • try কন্সট্রাকশন,
    যা এক্সেপশন হ্যান্ডেল করার জন্য কোড ব্লক ডিফাইন করে
  • catch কন্সট্রাকশন,
    যা এক্সেপশন ক্যাচ করে এবং হ্যান্ডেল করে
  • Exception ক্লাস,
    যা সকল এক্সেপশনের জন্য বেস ক্লাস