من الإصدارات السابقة إلى PHP 5، الذي تم إصداره في 13 يوليو 2004، كان الإبلاغ عن الأخطاء واضحًا إلى حد ما. بالإضافة إلى كتابة البرامج بعناية، يجب عليك أيضًا الانتباه إلى بعض عناصر تكوين PHP المحددة:
يقوم عنصرerror_reporting
بتعيين مستوى الإبلاغ عن الأخطاء. سواء كانت بيئة تطوير أو نشر، يوصى بشدة بتعيين هذا المشروع على E_ALL.
يحدد عنصرDisplay_errors
ما إذا كانت الأخطاء سيتم عرضها على الشاشة (مضمنة في الإخراج). يجب ضبطه على تشغيل أثناء التطوير حتى يتم اكتشاف الأخطاء أثناء التطوير، ويجب ضبطه على إيقاف في بيئة النشر بحيث يتم إخفاء الأخطاء عن جميع المستخدمين (والمهاجمين المحتملين).
يحدد العنصرlog_errors
ما إذا كانت الأخطاء مكتوبة في السجل أم لا. على الرغم من أن هذا يؤدي إلى عقوبة الأداء، إلا أنه ضروري للأخطاء النادرة. إذا أدت أخطاء التسجيل إلى محرك الأقراص الثابتة إلى حدوث حمل كبير للإدخال/الإخراج، فقد يستحق هذا اهتمامًا أكبر من كفاءة التطبيق. يجب ضبطه على تشغيل في بيئة النشر.
يحدد عنصرerror_log
موقع واسم ملف السجل. تأكد من أن خادم الويب لديه أذونات للملف المحدد.
يعد تعيين error_reporting على E_ALL مفيدًا لفرض تهيئة المتغيرات، نظرًا لأن استخدام متغير غير محدد سيؤدي إلى إنشاء إشعار.
لاحظ أنه يمكن ضبط كل عنصر من هذه العناصر باستخدام ini_set() دون الحاجة إلى الوصول إلى php.ini أو عمليات أخرى لتعيين هذه العناصر.
تم وصف وظيفة جيدة جدًا لمعالجة الأخطاء والإبلاغ عنها في دليل PHP:
http://www.php.net/manual/en/ref.errorfunc.php
يتضمن PHP 5 معالجة الاستثناءات. لمزيد من المعلومات، يرجى الاطلاع على: