কম্পিউটার

PHP7 এ পিএইচপি ত্রুটি


পরিচয়

সংস্করণ 7-এর আগে, পিএইচপি পার্সার বিভিন্ন শর্তের প্রতিক্রিয়ায় ত্রুটি রিপোর্ট করত। প্রতিটি ত্রুটি একটি নির্দিষ্ট পূর্বনির্ধারিত ধরনের হতে ব্যবহৃত. PHP7 ত্রুটি রিপোর্টিং প্রক্রিয়া পরিবর্তন করেছে. প্রথাগত ত্রুটি প্রতিবেদনের পরিবর্তে, বেশিরভাগ ত্রুটি এখন ত্রুটি ব্যতিক্রম থ্রো করে রিপোর্ট করা হয়৷

যদি ত্রুটির ব্যতিক্রমগুলি পরিচালনা না করা হয়, একটি মারাত্মক ত্রুটির প্রতিবেদন করা হয় এবং প্রচলিত ত্রুটির অবস্থার মতো পরিচালনা করা হবে। PHP এর ত্রুটির উত্তরাধিকার থ্রোয়েবল থেকে শুরু হয় ইন্টারফেস. সমস্ত পূর্বনির্ধারিত ত্রুটি যেমন পাটিগণিত ত্রুটি , Assertion Error , কম্পাইল ত্রুটি এবং TypeError থ্রোয়েবল আইটারফেস বাস্তবায়নকারী ক্লাস। PHP 7-এ ব্যতিক্রম হল নিক্ষেপযোগ্য ইন্টারফেস প্রয়োগ করা।

নিক্ষেপযোগ্য ইন্টারফেস ত্রুটি সহ থ্রো স্টেটমেন্টের মাধ্যমে নিক্ষেপ করা যেতে পারে এমন যেকোনো বস্তুর ভিত্তি হিসাবে কাজ করে এবং ব্যতিক্রম বস্তু একটি ব্যবহারকারী সংজ্ঞায়িত শ্রেণী সরাসরি নিক্ষেপযোগ্য ইন্টারফেস বাস্তবায়ন করতে পারে না। পরিবর্তে, ব্যবহারকারীকে সংজ্ঞায়িত ব্যতিক্রম শ্রেণী ঘোষণা করতে, এটি অবশ্যই ব্যতিক্রম প্রসারিত করতে হবে ক্লাস।

PHP এর ব্যতিক্রম হ্যান্ডলিং থ্রো নিয়ে গঠিত , ধরা , চেষ্টা করুন বিবৃতি ব্যতিক্রম বস্তু উত্থাপন করার জন্য, থ্রো আছে কীওয়ার্ড নিক্ষেপ করা ব্যতিক্রম ক্যাচ দ্বারা প্রক্রিয়া করা হয় ব্লক PHP কোড যেটি সম্ভাব্য ব্যতিক্রমের জন্য ঝুঁকিপূর্ণ তা ট্রাই এ সংযুক্ত আছে ব্লক।

ব্যতিক্রম ক্লাসের বিভিন্ন উদাহরণ ধরতে এক বা একাধিক ক্যাচ ব্লক থাকতে পারে। ট্রাই ব্লকে কোনো ব্যতিক্রম না ঘটলে, শেষ ক্যাচ ব্লকের পরে স্বাভাবিক এক্সিকিউশন চলতে থাকবে। যাইহোক, যখন ব্যতিক্রমটি ট্রাই ব্লকের ভিতরে নিক্ষেপ করা হয়, নেস্ট স্টেটমেন্ট চালানোর পরিবর্তে, পিএইচপি একটি ক্যাচ ব্লক খুঁজে বের করার চেষ্টা করে যা পরিচালনা করার জন্য ব্যতিক্রমের প্রকারের সাথে মেলে। যদি কোনো ম্যাচিং ক্যাচ ব্লক সংজ্ঞায়িত না করা হয়, পিএইচপি পার্সার মারাত্মক ত্রুটি রিপোর্ট করবে সাথে অপরাধিত ব্যতিক্রম বার্তা৷

আপনি অবশেষেও প্রদান করতে পারেন ক্যাচ ব্লকের পরে বা পরিবর্তে ব্লক করুন। অবশেষে ব্লকের কোড সর্বদা কার্যকর করা হবে, চেষ্টা ব্লকের মধ্যে ব্যতিক্রম ঘটবে কিনা তা নির্বিশেষে।


  1. PHP-তে set_exception_handler() ফাংশন

  2. PHP-তে restore_exception_handler() ফাংশন

  3. পিএইচপি-তে error_reporting() ফাংশন

  4. পিএইচপি-তে error_get_last() ফাংশন