পরিচয়
PHP-তে libxml_use_internal_errors() ফাংশনটি libxml লাইব্রেরির ডিফল্ট এরর হ্যান্ডলিং (যে ডিফল্টলি_errors PHP-র error handler-এ পাঠায়) বন্ধ করে এবং এররগুলো ইন্টারনাল বাফারে সংরক্ষণ করতে দেয়। এরপর ডেভেলপার libxml_get_errors() দিয়ে ইচ্ছামতো সময়ে এররগুলো ফেচ করে হ্যান্ডেল করতে পারেন। এটি XML/HTML পার্সিং-এ ক্লিন এরর হ্যান্ডলিংয়ের জন্য অত্যন্ত গুরুত্বপূর্ণ।
সিনট্যাক্স
libxml_use_internal_errors(bool $enable = false): bool
প্যারামিটার
enable — true দিলে ইন্টারনাল এরর হ্যান্ডলিং অন (ডিফল্ট false)।
রিটার্ন ভ্যালু
পূর্বের ইন্টারনাল এরর হ্যান্ডলিং স্টেট (true/false) ফেরত দেয়।
উদাহরণ
<?php
// ইন্টারনাল এরর হ্যান্ডলিং অন করুন
var_dump(libxml_use_internal_errors(true));
$mydoc = new DOMDocument;
if (!$mydoc->load('new.xml')) {
// এররগুলো ফেচ করে হ্যান্ডেল করুন
foreach (libxml_get_errors() as $error) {
echo "Error: {$error->message} (Line: {$error->line}, Col: {$error->column})";
}
// এরর বাফার ক্লিয়ার করুন
libxml_clear_errors();
}
?>
সেরা অনুশীলন (Best Practice):
- পার্সিং শুরু করার আগে
libxml_use_internal_errors(true)কল করুন। - পার্সিং 끝난 পর
libxml_get_errors()দিয়ে এররগুলো প্রসেস করুন। - শেষে
libxml_clear_errors()দিয়ে বাফার ক্লিয়ার করুন। - শেষে
libxml_use_internal_errors(false)দিয়ে ডিফল্টে ফিরিয়ে আনুন (ঐচ্ছিক)।