PHP ฟังก์ชัน Error และ Logging
- পূর্ববর্তী পৃষ্ঠা PHP Directory
- পরবর্তী পৃষ্ঠা PHP Filesystem
PHP Error সমীক্ষা
Error এবং Logging ফাংশনসমূহ আপনাকে ত্রুটি এবং লগিং করার জন্য দেয়。
Error ফাংশনটি ব্যবহারকারীকে ত্রুটি হ্যান্ডলিং রুল নির্ধারণ করতে এবং ত্রুটি রেকর্ডিং পদ্ধতি পরিবর্তন করতে দেয়。
Logging ফাংশনটি ব্যবহারকারীকে অ্যাপ্লিকেশনটিকে লগ করতে এবং লগ মেসেজসমূহ ইমেইল, সিস্টেম লগ বা অন্য মেশিন-এ পাঠাতে দেয়。
error ফাংশনটি ত্রুটি হ্যান্ডলিং এবং লগিং করার জন্য ব্যবহৃত হয়。
error ফাংশনটি আমাদের নিজস্ব ত্রুটি হ্যান্ডলিং রুল নির্ধারণ করতে এবং ত্রুটি রেকর্ডিং পদ্ধতি পরিবর্তন করতে দেয়。
logging ফাংশনটি আমাদের বার্তা সরাসরি অন্য মেশিন, ইমেইল বা সিস্টেম লগ-এ পাঠাতে দেয়。
error reporting ফাংশনটি আমাদের ত্রুটির ধরন এবং স্তরকে নির্ধারণ করতে দেয়。
ইনস্টল
PHP error ফাংশন PHP কর্মকরীর একটি অংশ। এই ফাংশনসমূহকে ইনস্টল করতে প্রয়োজন নেই。
Runtime কনফিগারেশন
error ফাংশনের আচরণ php.ini-এর সেটিংস দ্বারা প্রভাবিত হয়。
Errors এবং logging কনফিগারেশন অপশনসমূহ নিম্নরূপ:
নাম | ডিফল্ট মান | বিবরণ | পরিবর্তনযোগ্য পরিসীমা |
---|---|---|---|
error_reporting | NULL | ত্রুটি রিপোর্টিং স্তর সেট করুন (সংখ্যা বা নামকরণ সংকেত) | PHP_INI_ALL |
display_errors | "1" |
ত্রুটিকে স্ক্রিনের আউটপুট হিসাবে প্রদর্শন করা হবে কিংবা ব্যবহারকারীকে লুকানো হবে কি সেট করুন。 মন্তব্য:এই বৈশিষ্ট্যটি উৎপাদন সিস্টেমে ব্যবহার করা উচিত নয় (শুধুমাত্র উন্নয়নের জন্য সমর্থিত) |
PHP_INI_ALL |
display_startup_errors | "0" |
যদিও display_errors-কে চালু করা হয়, PHP-এর প্রারম্ভিক প্রক্রিয়ায় ত্রুটির তথ্য প্রদর্শিত হবে না。 মন্তব্য: পরীক্ষার জন্য ব্যবহার ছাড়াই display_startup_errors-কে বন্ধ করা পরামর্শ করা হয়。 |
PHP_INI_ALL |
log_errors | "0" |
স্ক্রিপ্ট চালানোর ত্রুটির তথ্যকে সার্ভার ত্রুটি লগ বা error_log-এ রেকর্ড করা হবে কি না সেট করুন。 মন্তব্য: এটা সার্ভারের সংক্রান্ত বিশেষ কনফিগারেশন আইটিম। মন্তব্য: উৎপাদন সিস্টেমে, এক্সট্রা পরীক্ষার জন্য ব্যবহার করতে পরামর্শ করা হয় না, এটা শুধুমাত্র উন্নয়নের জন্য সমর্থিত। |
PHP_INI_ALL |
log_errors_max_len | "1024" |
log_errors-এর মধ্যে সর্বোচ্চ বাইট সংখ্যা সেট করুন। এখানে ত্রুটির সূত্র সংক্রান্ত তথ্য যুক্ত হবে。 ডিফল্ট মান 1024, 0 হলে নিরবচ্ছিন্ন লম্বাইটির জন্য। এই লম্বাইটি সেটিং রেকর্ড করা ত্রুটি, প্রদর্শিত ত্রুটি, এবং $php_errormsg-কেও সীমাবদ্ধ করে। |
PHP_INI_ALL |
ignore_repeated_errors | "0" |
পুনরাবৃত্ত ত্রুটির সংবাদকে রেকর্ড করা হবে কিনা নির্ধারণ করুন。 পুনরাবৃত্ত ত্রুটি একই ফাইলের একই কোড লাইনে উপস্থিত হতে হবে, যদি ignore_repeated_source সেট করা হয় না। |
PHP_INI_ALL |
ignore_repeated_source | "0" |
পুনরাবৃত্ত ত্রুটির সংবাদকে রেকর্ড করা হবে কিনা নির্ধারণ করুন। পুনরাবৃত্ত সংবাদকে অবমূল্যায়ন করার সময়, সংবাদের সোর্সকেও অবমূল্যায়ন করা হবে。 যদি এই সেটিংটি সক্রিয় হয়, তবে পুনরাবৃত্ত তথ্যটি এটি কোনও ভিন্ন ফাইল বা কোনও ভিন্ন সোর্স লাইন থেকে উৎপন্ন হয় তা না কেন রেকর্ড করা হবে না。 |
PHP_INI_ALL |
report_memleaks | "1" | যদি এই পারামিটারটি On (ডিফল্ট) হিসাবে সেট করা হয়, তবে Zend মেমরি ম্যানেজার দ্বারা সংজ্ঞায়িত মেমরি লুসকার রিপোর্টটি দেখানো হবে。 | PHP_INI_ALL |
track_errors | "0" | যদি সক্রিয় হয়, তবে শেষতম ত্রুটি সবসময় $php_errormsg ভ্যানার মধ্যে থাকবে。 | PHP_INI_ALL |
html_errors | "1" | ত্রুটির সংবাদে HTML ট্যাগকে বন্ধ করুন。 |
|
xmlrpc_errors | "0" | যদি সক্রিয় হয়, তবে সাধারণ ত্রুটির রিপোর্টিং বন্ধ করে এবং ত্রুটির ফরম্যাটকে XML-RPC ত্রুটির সংবাদের ফরম্যাটে সেট করা হবে。 | PHP_INI_SYSTEM |
xmlrpc_error_number | "0" | XML-RPC faultCode এলিমেন্টের মান হিসাবে ব্যবহৃত হয়。 | PHP_INI_ALL |
docref_root | "" | (প্রথম প্রকাশিত হয়েছে PHP 4.3 থেকে) | PHP_INI_ALL |
docref_ext | "" | (প্রথম প্রকাশিত হয়েছে PHP 4.3.2 থেকে) | PHP_INI_ALL |
error_prepend_string | NULL | ত্রুটির সংবাদ পরে ফাইল করা হবে এমন স্ট্রিংকে নির্ধারণ করুন。 | PHP_INI_ALL |
error_append_string | NULL | ত্রুটির সংবাদ পরে ফাইল করা হবে এমন স্ট্রিংকে নির্ধারণ করুন。 | PHP_INI_ALL |
error_log | NULL |
স্ক্রিপ্টের ত্রুটি রেকর্ড করা হবে এমন ফাইলটি নির্ধারণ করুন। এই ফাইলটি ওয়েব সার্ভার ব্যবহারকারীর জন্য লিখার জন্য উপলব্ধ হতে হবে。 যদি syslog-এর বিশেষ মান ব্যবহার করা হয়, তবে ত্রুটির সংবাদকে সিস্টেম লগ রেকর্ডারে পাঠান。 |
PHP_INI_ALL |
PHP ฟังก์ชัน Error และ Logging
ফাংশন | বিবরণ |
---|---|
debug_backtrace() | backtrace-কে তৈরি করুন。 |
debug_print_backtrace() | backtrace-কে প্রিন্ট করুন。 |
error_get_last() | সর্বশেষ ঘটা ত্রুটিকে ফিরিয়ে দিন。 |
error_log() | ত্রুটির সংবাদ সার্ভার, ফাইল বা দূরস্থ লক্ষ্যকে পাঠান। |
error_reporting() | কোন ত্রুটি রিপোর্ট করা হবে তা নির্ধারণ করুন。 |
restore_error_handler() | পূর্বের ত্রুটি হালচালনা ফিরিয়ে নিন。 |
restore_exception_handler() | পূর্ববর্তী অসম্ভবতা হ্যান্ডলার পুনরুদ্ধার করা |
set_error_handler() | ব্যবহারকারী স্তরের ত্রুটি হ্যান্ডলার সংজ্ঞায়ন করা |
set_exception_handler() | ব্যবহারকারী স্তরের অসম্ভবতা হ্যান্ডলার সংজ্ঞায়ন করা |
trigger_error() | ব্যবহারকারী স্তরের ত্রুটি বার্তা তৈরি করা |
user_error() | trigger_error() ১মতো |
PHP 5-র প্রতিষ্ঠিত ত্রুটি ও লগ স্থির
মান | স্থির | বিবরণ |
---|---|---|
1 | E_ERROR | রানটাইম ফ্যাটাল ত্রুটি।এটা সম্পূর্ণ রিপেয়ার করা যায় না।স্ক্রিপ্টটির বাধ্যতামূলক সমাপ্তি করে。 |
2 | E_WARNING | রানটাইম নন-ফ্যাটাল ত্রুটি।এটা স্ক্রিপ্টটির বাধ্যতামূলক সমাপ্তি করে না。 |
4 | E_PARSE | কম্পাইল সময়ের সাঙ্কেতিক ত্রুটি।পার্শ্বণীয় ত্রুটি শুধুমাত্র এনালাইজার দ্বারা উৎপন্ন হয়。 |
8 | E_NOTICE | রানটাইম নোটিস।স্ক্রিপ্টটির একটি ত্রুটির সম্ভাবনা রয়েছে, কিন্তু স্ক্রিপ্টটি সম্পূর্ণ ভাবে সক্রিয় থাকতেও পারে এমন নোটিস |
16 | E_CORE_ERROR | PHP ইনিশিয়েশন স্টার্ট প্রক্রিয়ায় ঘটা মুক্ত ত্রুটি।এটা E_ERROR-র মতো, কিন্তু PHP ইঞ্জিন কোর দ্বারা উৎপন্ন হয়。 |
32 | E_CORE_WARNING | PHP ইনিশিয়েশন স্টার্ট প্রক্রিয়ায় ঘটা সতর্কতা (মুক্ত ত্রুটি)।E_WARNING-র মতো, কিন্তু PHP ইঞ্জিন কোর দ্বারা উৎপন্ন হয়。 |
64 | E_COMPILE_ERROR | কম্পাইল সময়ের মুক্ত ত্রুটি।E_ERROR-র মতো, কিন্তু জেন্ড স্ক্রিপ্ট ইঞ্জিন দ্বারা উৎপন্ন হয়。 |
128 | E_COMPILE_WARNING | কম্পাইল সময়ের সতর্কতা (মুক্ত ত্রুটি)।E_WARNING-র মতো, কিন্তু জেন্ড স্ক্রিপ্ট ইঞ্জিন দ্বারা উৎপন্ন হয়。 |
256 | E_USER_ERROR | ব্যবহারকারী দ্বারা উৎপন্ন ত্রুটি।E_ERROR-র মতো, কিন্তু ব্যবহারকারী এটা PHP ফাংশন trigger_error() ব্যবহার করে উৎপন্ন করেন。 |
512 | E_USER_WARNING | ব্যবহারকারী দ্বারা উৎপন্ন সতর্কতা।E_WARNING-র মতো, কিন্তু ব্যবহারকারী এটা PHP ফাংশন trigger_error() ব্যবহার করে উৎপন্ন করেন。 |
1024 | E_USER_NOTICE | ব্যবহারকারী দ্বারা উৎপন্ন নোটিফিকেশন তথ্য।E_NOTICE-র মতো, কিন্তু ব্যবহারকারী এটা PHP ফাংশন trigger_error() ব্যবহার করে উৎপন্ন করেন。 |
2048 | E_STRICT | PHP ১মতো কোডকে সংশোধন প্রস্তাব করে কাজ করা হয়েছে, যাতে কোডটি শুধুমাত্র শুভ পরিবর্তনযোগ্যতা রাখে。 |
4096 | E_RECOVERABLE_ERROR | ধর্মীয় ত্রুটির সংস্পর্কে।এটি একটি অত্যন্ত ঝুঁকিদারী ত্রুটির সংক্রান্ত নির্দেশ দেয়, কিন্তু PHP ইঞ্জিনটির অস্থায়ী অবস্থাতে পরিণত হয়নি যদি এই ত্রুটি ব্যবহারকারীর নিজস্ব হ্যান্ডলার দ্বারা অপরিগ্রহণ করা হয়না (set_error_handler() দেখুন),তবে এটি E_ERROR হয়ে ফেলে এবং স্ক্রিপ্ট বন্ধ হবে |
8192 | E_DEPRECATED | রানটাইম নোটিফিকেশন।এটি সক্রিয় করার পর, ভবিষ্যতের সংস্করণে সঠিকভাবে কাজ করতে পারবে না এমন কোডের জন্য সতর্কতা দেওয়া হবে |
16384 | E_USER_DEPRECATED | ব্যবহারকারী দ্বারা উৎপন্ন সতর্কতা তথ্য।এটি E_DEPRECATED-এর মতো, কিন্তু এটি ব্যবহারকারীকে নিজের কোডে PHP ফাংশন trigger_error() ব্যবহার করে উৎপন্ন করা হয় |
32767 | E_ALL | E_STRICT সকল ত্রুটি এবং সতর্কতা সংক্রান্ত তথ্য |
- পূর্ববর্তী পৃষ্ঠা PHP Directory
- পরবর্তী পৃষ্ঠা PHP Filesystem