यह एक n00bish सवाल हो सकता है, लेकिन जो भी हो। फॉर्म सत्यापन के लिए अपवादों का उपयोग करना ठीक है? मान लें कि मेरे पास एक ऐसा फॉर्म है जो उपयोगकर्ताओं को उनके नाम और ईमेल के लिए पूछता है, निम्नलिखित करने का अधिकार है?फॉर्म सत्यापन के लिए अपवादों का उपयोग किया जाना चाहिए?
try {
if (empty($_POST["name"])) {
throw new UserRegistrationException("Your name cannot be empty.");
}
if (filter_var($_POST["email"])) {
throw new UserRegistrationException("Invalid email");
}
// Save new user into database
} catch (UserRegistrationException $e) {
// Show errors on screen
}
इस -यदि
इसके अलावा वास्तव में है- ऐसा करने के लिए सही तरीका उपयोगकर्ता दोनों एक खाली नाम और एक अमान्य ईमेल प्रस्तुत करता है, तो है, अपवाद के दोनों निष्पादित या केवल एक ही पहले प्रतीत होता है कि होगा (इस मामले में एक नाम)?
मैं PHP का उपयोग कर रहा हूं।
यह अपवादों का उपयोग करने का निश्चित रूप से एक अजीब तरीका है। "क्या दोनों अपवाद निष्पादित होंगे या केवल पहले दिखाई देंगे" - क्या कोड की 5 पंक्तियां लिखना और खुद को देखना मुश्किल है? – zerkms
केवल पहले फेंक दिया जाएगा और पकड़ा जाएगा, दूसरों को छोड़ दिया। यदि आपको त्रुटि संदेशों को जमा करने की आवश्यकता है, तो आप केवल एक सादे पुराने का उपयोग कर बेहतर हैं अगर/और चेन और सरणी को सरणी में जोड़ना। –
@ माइकल मैंने ऐसा सोचा था ... हालांकि यह अपवादों का उपयोग करने के लिए एक अच्छा मौका था (जैसा कि अमान्य इनपुट को _exceptional_ माना जाना चाहिए), लेकिन अगर मैं/else के – federicot