PHP-এর পুরানো সংস্করণে, যদি আমরা একটি এক্সসেপশন ক্যাচ করতে চাই, তবে আমাদের সেটি একটি ভেরিয়েবলে সংরক্ষণ করতে হতো যাতে চেক করা যায় যে ভেরিয়েবলটি ব্যবহৃত হচ্ছে কিনা।
PHP 8-এর আগে, এক্সসেপশন ক্যাচ ব্লক হ্যান্ডেল করার জন্য, আমাদের ট্রাই ব্লক দ্বারা থ্রো করা এক্সসেপশনকে একটি ভেরিয়েবলে ক্যাচ করতে হতো।
উদাহরণ: PHP-এ Capturing Exception Catches
<?php function foo() { try{ throw new Exception('Hello'); } catch (Exception $e) { return $e->getMessage(); } } ?>ব্যাখ্যা − উপরের প্রোগ্রামে, এক্সসেপশন ক্যাচ ব্লক দ্বারা ভেরিয়েবল $e-তে ক্যাচ করা হচ্ছে। এখন $e ভেরিয়েবল এক্সসেপশন সম্পর্কে যেকোনো তথ্য যেমন কোড, মেসেজ ইত্যাদি ধারণ করতে পারে।
PHP 8 নন-ক্যাপচারিং ক্যাচ চালু করেছে। এখন, ভেরিয়েবলে ক্যাপচার না করেই এক্সসেপশন ক্যাচ করা সম্ভব। এখন আমরা ভেরিয়েবলটি উপেক্ষা করতে পারি।
উদাহরণ: PHP 8-এ Non-Capturing Exception Catches
<?php try{ throw new Exception('hello'); } catch (Exception) { // $e ভেরিয়েবল বাদ দেওয়া হয়েছে } ?>নোট: উপরের প্রোগ্রামে, আমরা এক্সসেপশন তথ্য ধারণ করতে $e ভেরিয়েবল ব্যবহার করছি না।