نضع الكود الذي قد يفشل داخل try، ونعالج المشكلة في catch:
try {
$data = json_decode($json, true, 512, JSON_THROW_ON_ERROR);
saveOrder($data);
} catch (JsonException $e) {
echo 'Invalid data';
} catch (Exception $e) {
error_log($e->getMessage());
echo 'Something went wrong';
} finally {
closeConnection();
}
ملاحظات
- يمكن كتابة أكثر من
catch، الأدق أولًا. finallyاختيارية، وتُنفَّذ دائمًا.- تعمل مع أي استثناء: قواعد البيانات، والملفات، والتحقق، وغيرها.
لا تكتم الأخطاء بـ catch فارغة؛ سجّلها على الأقل، حتى تعرف أنها حدثت.