Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> PHP

PHP7 में PHP त्रुटियाँ

परिचय

संस्करण 7 से पहले, PHP पार्सर विभिन्न स्थितियों के जवाब में त्रुटियों की रिपोर्ट करता था। प्रत्येक त्रुटि एक निश्चित पूर्वनिर्धारित प्रकार की हुआ करती थी। PHP7 ने त्रुटि रिपोर्टिंग के तंत्र को बदल दिया है। पारंपरिक त्रुटि रिपोर्टिंग के बजाय, अधिकांश त्रुटियाँ अब त्रुटि अपवादों को फेंक कर रिपोर्ट की जाती हैं।

यदि त्रुटि अपवाद अनियंत्रित हो जाते हैं, तो एक घातक त्रुटि की सूचना दी जाती है और इसे पारंपरिक त्रुटि स्थिति की तरह नियंत्रित किया जाएगा। PHP की त्रुटि पदानुक्रम थ्रोबल . से प्रारंभ होती है इंटरफेस। सभी पूर्वनिर्धारित त्रुटियां जैसे अंकगणित त्रुटि , अभिकथन त्रुटि , संकलन त्रुटि और लेखन त्रुटि थ्रोएबल इटरफेस को लागू करने वाली कक्षाएं हैं। PHP 7 में अपवाद भी थ्रोएबल इंटरफ़ेस लागू करता है।

थ्रोएबल इंटरफ़ेस किसी भी ऑब्जेक्ट के लिए आधार के रूप में कार्य करता है जिसे थ्रो स्टेटमेंट के माध्यम से फेंका जा सकता है, जिसमें त्रुटि . शामिल है और अपवाद वस्तुओं। एक उपयोगकर्ता परिभाषित वर्ग सीधे थ्रोएबल इंटरफ़ेस को लागू नहीं कर सकता है। इसके बजाय, एक उपयोगकर्ता परिभाषित अपवाद वर्ग घोषित करने के लिए, उसे अपवाद . का विस्तार करना होगा कक्षा।

PHP के एक्सेप्शन हैंडलिंग में थ्रो . शामिल हैं , पकड़ें , कोशिश करें बयान। अपवाद वस्तु को उठाने के लिए, फेंक . है खोजशब्द। फेंके गए अपवाद को कैच . द्वारा संसाधित किया जाता है खंड मैथा। PHP कोड जो अपवाद के लिए संभावित रूप से असुरक्षित है कोशिश . में संलग्न है ब्लॉक करें।

अपवाद वर्गों के विभिन्न उदाहरणों को पकड़ने के लिए एक या अधिक कैच ब्लॉक मौजूद हो सकते हैं। जब ट्राई ब्लॉक में कोई अपवाद नहीं होता है, तो अंतिम कैच ब्लॉक के बाद सामान्य निष्पादन जारी रहेगा। हालाँकि, जब अपवाद को try ब्लॉक के अंदर फेंका जाता है, तो नेस्ट स्टेटमेंट को निष्पादित करने के बजाय, PHP एक कैच ब्लॉक खोजने की कोशिश करता है जो कि हैंडल किए जाने वाले अपवाद के प्रकार से मेल खाता है। यदि कोई मिलान कैच ब्लॉक परिभाषित नहीं है, तो PHP पार्सर घातक त्रुटि की रिपोर्ट करेगा अनकॉटेड अपवाद . के साथ संदेश।

आप आखिरकार . भी प्रदान कर सकते हैं कैच ब्लॉक के बाद या इसके बजाय ब्लॉक करें। अंत में ब्लॉक में कोड हमेशा निष्पादित किया जाएगा, इस बात की परवाह किए बिना कि कोशिश ब्लॉक के अंदर अपवाद होता है या नहीं।


  1. PHP में रिस्टोर_एक्सप्शन_हैंडलर () फंक्शन

    पुनर्स्थापना_अपवाद_हैंडलर () फ़ंक्शन पिछले अपवाद हैंडलर को पुनर्स्थापित करता है। इसका उपयोग पिछले अपवाद हैंडलर (जो बिल्ट-इन या उपयोगकर्ता परिभाषित फ़ंक्शन हो सकता है) पर वापस जाने के लिए set_exception_handler() का उपयोग करके अपवाद हैंडलर फ़ंक्शन को बदलने के बाद किया जाता है। सिंटैक्स restore_excepti

  1. PHP में error_reporting () फ़ंक्शन

    error_reporting() फ़ंक्शन निर्दिष्ट करता है कि कौन सी त्रुटियां रिपोर्ट की गई हैं। यह रनटाइम पर error_reporting निर्देश सेट करता है। PHP में त्रुटियों के कई स्तर हैं, इस फ़ंक्शन का उपयोग करके उस स्तर को आपकी स्क्रिप्ट की अवधि (रनटाइम) के लिए सेट करता है। यदि कोई स्तर पैरामीटर नहीं दिया गया है तो यह

  1. PHP में error_get_last () फ़ंक्शन

    error_get_last () फ़ंक्शन को अंतिम त्रुटि एक सहयोगी सरणी के रूप में हुई। सहयोगी सरणी में चार कुंजियां होती हैं - [प्रकार] - त्रुटि प्रकार का वर्णन करता है [संदेश] - त्रुटि संदेश का वर्णन करता है [फ़ाइल] - उस फ़ाइल का वर्णन करता है जहां त्रुटि हुई [लाइन] - उस लाइन का वर्णन करता है जहां त्