आप सीधे or throw new Exception();
पर सक्षम नहीं होंगे क्योंकि throw
एक बयान है, एक अभिव्यक्ति नहीं। चूंकि or
वास्तव में एक ऑपरेटर है, इसलिए उम्मीद है कि इसके संचालन अभिव्यक्तियां होंगी (चीजें जो कुछ मानों का मूल्यांकन करती हैं)।
आप इसके बजाय यह करने के लिए होगा: के रूप में webbiedave बताते टिप्पणी कह रहा है कि आप कॉल करने के लिए की जरूरत है,
$re = mysql_query($query);
if (!$re) {
throw new Exception('Query Failed');
}
आप throwException()
समारोह है कि PHP मैनुअल टिप्पणी द्वारा प्रस्तावित उपयोग करने के लिए प्रयास कर रहे हैं कि समारोह के बजाय सीधे throw
बयान, इस तरह:
$re = mysql_query($query) or throwException('Query Failed');
PHP में कोई नियम कहता है कि आप एक वर्ग विधि से अपवाद फेंक करने की जरूरत नहीं है। जब तक उस अपवाद को पकड़ने का कोई तरीका है तो आप ठीक हैं। यदि आपका मतलब है कि आप Exception
कक्षा का उपयोग किए बिना अपवाद फेंकना चाहते हैं, तो आपको, करना होगा। अपवाद वस्तुओं द्वारा प्रकृति हैं; आप एक अपवाद नहीं फेंक सकते हैं जो ऑब्जेक्ट नहीं है (या Exception
वर्ग से प्राप्त नहीं होता है)।
यदि आप अपवाद फेंकना नहीं चाहते हैं लेकिन आप अक्सर PHP (नोटिस, चेतावनियां और घातक त्रुटियों) से देखे गए त्रुटि को उठाते हैं, तो trigger_error()
का उपयोग करें।
$re = mysql_query($query);
if (!$re) {
trigger_error('Query Failed', E_USER_ERROR);
}
"स्थैतिक" का क्या अर्थ है? – BoltClock
स्थिर द्वारा मेरा मतलब है कि कक्षा – sreejith
को शुरू किए बिना मेरा मतलब है कि यह बेकार 'क्वेरी असफल' कथन सिर्फ एक उदाहरण है और वास्तव में आप क्वेरी –