यदि आप अपवाद चाहते हैं, तो आपको पीडीओ का उपयोग करना होगा।
pg_* फ़ंक्शन और आपके कोड के मामले में, आपको यह जांचना होगा कि क्या $result का मान असत्य है, यदि ऐसा होता है, तो एक त्रुटि हुई।
आप त्रुटि विवरण pg_last_error()
. के साथ प्राप्त कर सकते हैंकुछ इस तरह:
$result = pg_query_params ( $dbconn,
'DELETE FROM questions
WHERE question_id = $1',
array ( $question_id )
);
if ($result === false) {
print pg_last_error($dbconn);
} else {
print 'everything was ok';
}
इसलिए, मूल रूप से, हर बार जब आप pg_* फ़ंक्शन का उपयोग करते हैं, तो आपको यह जांचना होगा कि क्या असत्य लौटाया गया था, यह ठीक उसी तरह है जैसे उन कार्यों के साथ होता है।
हां, आप अपने खुद के रैपर बना सकते हैं ताकि pg_query* के बजाय आप my_db_query() को कॉल करें, जो तब रिटर्न वैल्यू जांच और अपवाद फेंकता है।
या, आप पीडीओ के साथ जा सकते हैं, जो आपको होने वाली सभी त्रुटियों के लिए पीडीओएक्सप्शन फेंकने में सक्षम है।