একটি PHP অ্যাপ্লিকেশন স্ক্রিপ্টের রানটাইমে অনেক লেভেলের এরর প্রোডিউস করে। তাই এই আর্টিকেলে আমরা সব এরর ও ওয়ার্নিং মেসেজ ডিসপ্লে করার পদ্ধতি শিখব।
সকল PHP এরর ও ওয়ার্নিং দেখানোর সবচেয়ে দ্রুত উপায় হলো আপনার PHP কোড ফাইলে নিচের লাইনগুলো যোগ করা:
ini_set('display_errors', 1);
ini_set('display_startup_errors', 1);
error_reporting(E_ALL);
ini_set ফাংশন আপনার php.ini ফাইলে থাকা কনফিগারেশন ওভাররাইড করার চেষ্টা করে। যদি php.ini-তে display_error অফ থাকে, তবে কোডে সেটি অন করবে। এটি display_startup_errors-ও true সেট করে যাতে এরর মেসেজ দেখায়। error_reporting() একটি নেটিভ PHP ফাংশন যা এরর ডিসপ্লে করতে ব্যবহৃত হয়। এটিকে true সেট করলে কোডে হয়েছে এমন এররগুলো দেখাবে।
আবার প্রশ্ন উঠে E_ALL কী? উত্তর সহজ: PHP কোড বিভিন্ন লেভেলের এরর প্রোডিউস করে। তাহলে শিখি PHP কোডে কোন কোন টাইপের এরর হয়।
E_ERROR:
ফেটাল রানটাইম এরর, স্ক্রিপ্ট এক্সিকিউশন हाल্ট হয়েছেE_WARNING:
নন-ফেটাল রানটাইম এরর, স্ক্রিপ্ট এক্সিকিউশন हाल্ট হয়নিE_PARSE:
কম্পাইল টাইম এরর, পার্সার দ্বারা জেনারেটেডE_NOTICE:
স্ক্রিপ্ট কিছু খুঁজে পেল যা এরর হতে পারেE_CORE_ERROR:
স্ক্রিপ্টের_initial startup-এ ঘটা ফেটাল এররE_CORE_WARNING:
স্ক্রিপ্টের initial startup-এ ঘটা নন-ফেটাল এররE_ALL:
সকল এরর ও ওয়ার্নিংদুর্ভাগ্যক্রমে, আমাদের লেখা উপরের কোড প্রায়ই পার্স এরর দেখাতে পারবে না, যেন মিসিং সেমিকোলন বা মিসিং কার্লি ব্রেস। এই কেসে
php.iniকনফিগারেশন পরিবর্তন করতে হবে।display_errors = ondisplay_errorsডিরেক্টিভ অবশ্যইphp.iniফাইলে "on" সেট থাকতে হবে। এটি সিনট্যাক্স বা পার্স মিসটেকসহ সকল এরর দেখাবে যেগুলো শুধু PHP কোডেini_setফাংশন কল করে দেখানো সম্ভব না।
উপরোক্ত পদ্ধতিতে আমরা আমাদের PHP অ্যাপ্লিকেশনে এরর ডিসপ্লে করতে পারি।