شرح صفوف ومحتوى الفقرة
في الإصدارين 11 و 12 من Laravel، تُدار معالجة الاستثناءات مركزياً داخل دالة withExceptions في ملف bootstrap/app.php. يمكنك تسجيل دوال report مخصصة لإرسال الأخطاء الحرجة إلى خدمات المراقبة، ودوال render لإرجاع استجابات ويب أو JSON مخصصة، بالإضافة إلى دالة abort لإطلاق أخطاء HTTP مباشرة.
- الإعداد المركزي (Centralized Configuration): استخدم دالتي report و render على كائن الاستثناءات داخل ملف bootstrap/app.php.
- دوال الإيقاف السريعة (HTTP Exception Helpers): استدع دالة abort أو abort_if داخل المتحكمات لإيقاف التنفيذ وإرجاع رمز الخطأ فوراً.
- المخرجات الآمنة في الإنتاج (Safe Production Output): عند تعطيل وضع التصحيح APP_DEBUG، يخفي Laravel تفاصيل الكود ويعرض صفحة خطأ آمنة.
PHP
// bootstrap/app.php
->withExceptions(function (Exceptions $exceptions) {
$exceptions->render(function (DomainException $e) {
return response()->json(['err' => 'Bad'], 400);
});
})