Avatar ·

كيفية اعتراض الخطأ الفادح (E_ERROR) في PHP؟

مرحباً بالجميع! أنا مبتدئ في PHP وأواجه مشكلة منذ عدة أيام. لدي سكريبت يعالج رفع الملفات من المستخدمين. أحياناً، إذا كان الملف كبيراً جداً أو تالفاً، يتعطل PHP بخطأ فادح (E_ERROR) — مثلاً عند محاولة تخصيص ذاكرة أو عند استدعاء دالة غير موجودة لكائن. لقد قمت بالفعل بإعداد `set_error_handler()`، لكنه لا يلتقط الأخطاء الفادحة. إليك مثال على الكود: ```php nonExistentMethod(); // هنا سيحدث E_ERROR } processData($userInput); ?> ``` في هذه الحالة، السكريبت يعرض ببساطة "Fatal error: Call to undefined method..." وينتهي. أحتاج إلى أنه عند حدوث مثل هذا الخطأ، لا يتعطل السكريبت، بل يسجل الخطأ في السجل ويواصل التنفيذ (أو على الأقل يعرض للمستخدم رسالة مهذبة).