FuelPHP - त्रुटि हैंडलिंग और डिबगिंग

FuelPHP त्रुटियों को संभालने और एप्लिकेशन को डीबग करने के लिए एक उत्कृष्ट समर्थन प्रदान करता है। आइए इस अध्याय में एरर हैंडलिंग और डीबगिंग को समझते हैं।

गलती संभालना

FuelPHP त्रुटि हैंडलिंग अपवादों पर आधारित है। FuelPHP सभी पुराने php त्रुटियों के लिए PhpErrorException अपवाद प्रदान करता है। जब भी PHP कोड में कोई त्रुटि आती है तो FuelPHP PhpErrorException उठाती है। FuelPHP विभिन्न HTTP स्थिति कोड के लिए कस्टम त्रुटि पेज प्रदर्शित करना आसान बनाता है।

फ़ाइल नहीं मिली त्रुटि

FuelPHP अज्ञात अनुरोधों को संभालने के लिए एक नया अपवाद वर्ग, HttpNotFoundException प्रदान करता है। कभी-कभी, हम अनुरोध का सामना कर सकते हैं जो संभाला नहीं जा सकता है। उस समय, हम सिर्फ HttpNotFoundException को फेंक सकते हैं।

डिफ़ॉल्ट रूप से, एक डिफ़ॉल्ट पृष्ठ 400 कॉन्फ़िगरेशन का उपयोग करके मार्गों कॉन्फ़िगरेशन फ़ाइल, ईंधन / एप्लिकेशन / कॉन्फ़िगरेशन / मार्गों.php में HttpNotFoundException के लिए कॉन्फ़िगर किया गया है। जब भी HttpNotFoundException को उठाया जाता है, तो अनुरोध 400 पृष्ठ पर पुनर्निर्देशित हो जाएगा।

'_404_'   => 'welcome/404',    // The main 404 route

आंतरिक त्रुटियां

FuelPHP सभी सर्वर त्रुटियों को संभालने के लिए एक नया अपवाद वर्ग, HttpServerErrorException प्रदान करता है। कभी-कभी, हम आंतरिक त्रुटियों के कारण दिए गए अनुरोध को संसाधित करने में सक्षम नहीं हो सकते हैं। उस समय, हम सिर्फ HttpServerErrorException को फेंक सकते हैं।

डिफ़ॉल्ट रूप से, एक डिफ़ॉल्ट पृष्ठ 500 कॉन्फ़िगरेशन का उपयोग करके मार्ग कॉन्फ़िगरेशन फ़ाइल, ईंधन / ऐप / कॉन्फ़िगरेशन / मार्गों में स्थित HttpServerErrorException के लिए कॉन्फ़िगर किया गया है। जब भी HttpServerErrorException को उठाया जाता है, तो अनुरोध 500 पृष्ठ पर पुनर्निर्देशित हो जाएगा।

'_500_'   => 'welcome/500',    // The main 500 route

यह पृष्ठ त्रुटि लॉग करेगा, पृष्ठ में वसीयत स्वरूपित त्रुटि दिखाएगा और कभी-कभी सिस्टम व्यवस्थापक को एक अधिसूचना भेजेगा।

पहुँच उल्लंघन त्रुटियाँ

FuelPHP एक्सेस उल्लंघनों को संभालने के लिए एक नया अपवाद वर्ग, HttpNoAccessException प्रदान करता है। कभी-कभी, हम पहुँच प्रतिबंध के कारण अनुरोध को संसाधित करने में सक्षम नहीं हो सकते हैं। उस समय, हम बस HttpNoAccessException को फेंक सकते हैं।

डिफ़ॉल्ट रूप से, एक डिफ़ॉल्ट पृष्ठ 403 प्रविष्टि का उपयोग करके मार्गों कॉन्फ़िगरेशन फ़ाइल, ईंधन / एप्लिकेशन / कॉन्फ़िगरेशन / मार्गों में HttpNoAccessException के लिए कॉन्फ़िगर किया गया है। जब भी HttpNoAccessException को उठाया जाता है, तो अनुरोध 403 पृष्ठ पर पुनर्निर्देशित हो जाएगा।

'_403_'   => 'welcome/403',     // The main 403 route

यह पृष्ठ एक्सेस उल्लंघन की जानकारी दिखाएगा।

डिबगिंग

डिबगिंग एक एप्लिकेशन विकसित करने वाली सबसे लगातार गतिविधियों में से एक है। FuelPHP एक साधारण वर्ग प्रदान करता है,Debugआवेदन की डिबगिंग गतिविधि को संभालने के लिए। आइए हम इस अध्याय में डिबग क्लास और उसके तरीके सीखते हैं।

डिबग क्लास

डिबग वर्ग चर, वस्तुओं, सरणी, आदि की विस्तृत जानकारी दिखाने के लिए उपयोगिता विधियाँ प्रदान करता है, डिबग वर्ग निम्नलिखित विधियाँ प्रदान करता है:

ढेर

डंप विधि एक संरूपित संरचित तरीके से ब्राउज़र में कई मिश्रित मूल्यों को लौटाता है।

Debug::dump($var1, $var2);

पश्व-अनुरेखन ()

backtrace कोड के मौजूदा निष्पादन के बारे में विस्तृत जानकारी दिखाता है। यह PHP फ़ाइल की जानकारी, वर्तमान लाइन और उसके सभी पिछले कार्यों को दिखाता है।

Debug::backtrace();

वर्गों ()

सभी वर्गों की सूची देता है।

Debug::classes();

इंटरफेस ()

सभी इंटरफ़ेस वर्गों की सूची देता है।

Debug::interfaces();

भी शामिल है ()

वर्तमान में रनटाइम पर लोड की गई सभी फ़ाइलों की सूची लौटाता है।

Debug::includes();

कार्य ()

सभी कार्यों की सूची लौटाता है।

Debug::functions();

स्थिरांक ()

सभी स्थिरांक की सूची देता है।

Debug::constants();

एक्सटेंशन ()

सभी एक्सटेंशन की सूची देता है।

Debug::extensions();

हेडर ()

सभी HTTP हेडर की सूची लौटाता है।

Debug::headers();

phpini ()

Php.ini फ़ाइल से पढ़ी गई कॉन्फ़िगरेशन सेटिंग्स की सूची प्रिंट करता है।

Debug::phpini();