यहां कोई भी उत्तर गलत नहीं है। लेकिन वास्तव में तीनों संयुक्त ही वास्तविक उत्तर हैं। आपको निश्चित रूप से सेट करना चाहिए
$this->pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
जैसा कि सेराड . ने कहा है ।
अब से डेटाबेस से संबंधित किसी भी चीज़ के बारे में हर एक मुद्दे को PDOException
. के अपवाद के माध्यम से फेंक दिया जाता है . आपको बस अपना खुद का Exception
फेंकना नहीं है जैसा कि लाडर . ने कहा है क्योंकि यह बेकार है। बस सीढ़ी लें कोड और इसे
...
$data = array();
$model = new BlogModel;
try{
$model->save(2,'test');
$data['result']['message'] = 'Settings saved';
$data['result']['status'] = 'success';
}catch(PDOException $e){
$data['result']['message'] = 'Could not save the settings';
$data['result']['status'] = 'error';
}
और अपने आप से कुछ भी न फेंके।
फिर पीडीओ प्रश्नों को डीबग करने का एक बहुत अच्छा तरीका बेसिक . द्वारा लिंक की गई कैच स्क्रिप्ट का उपयोग करना है कि आप यहां पा सकते हैं एक बार फिर।
इन चीजों को एक साथ मिलाकर आपके पास आने वाली सभी त्रुटियों को पकड़ने के लिए एक लचीला, साफ और आसान-डीबग तरीका होगा।