এক্সসেপশন হলো প্রোগ্রাম এক্সিকিউশনের সময় উদ্ভূত একটি সমস্যা। এক্সিকিউশন চলাকালীন এক্সসেপশন ঘটলে তারপরের কোড এক্সিকিউট হয় না, এবং PHP প্রথম মিলে যাওয়া catch ব্লক খুঁজে বের করার চেষ্টা করে। যদি এক্সসেপশন ক্যাচ না হয়, তবে PHP একটি ফেটাল এরর ইস্যু করে "Uncaught Exception" মেসেজসহ।
সিনট্যাক্স
try {
print "this is our try block";
throw new Exception();
} catch (Exception $e) {
print "something went wrong, caught yah!\n";
} finally {
print "this part is always executed";
}
উদাহরণ
<?php
function printdata($data) {
try {
if($data == 6) {
throw new Exception('Number is six.');
echo "\n After throw (It will never be executed)";
}
}
catch(Exception $e){
echo "\n Exception Caught", $e->getMessage();
}
finally{
echo "\n Final block will be always executed";
}
}
printdata(0);
printdata(6);
?>
আউটপুট
Final block will be always executed
Exception CaughtNumber is six.
Final block will be always executed
নোট
এক্সসেপশন হ্যান্ডেল করার জন্য প্রোগ্রাম কোড অবশ্যই try ব্লকের ভিতরে থাকতে হবে। প্রতিটি try-এর কমপক্ষে একটি সংশ্লিষ্ট catch ব্লক থাকতে হবে। বিভিন্ন ক্লাসের এক্সসেপশন ক্যাচ করার জন্য একাধিক catch ব্লক ব্যবহার করা যায়।