PHP خطأ مقدمة
وتستخدم وظائف الخطأ في التعامل مع معالجة الأخطاء وقطع الأشجار.
وظائف الخطأ تتيح لنا تحديد القواعد الخاصة معالجة الأخطاء، وتعديل الطريقة يمكن تسجيل الأخطاء.
وظائف تسجيل تسمح لنا أن نرسل رسائل مباشرة إلى أجهزة أخرى ورسائل البريد الإلكتروني، أو سجلات النظام.
وظائف بالأخطاء تسمح لنا لتخصيص أي مستوى ونوع من ردود الفعل الخطأ تعطى.
التركيب
وظائف خطأ PHP هي جزء من جوهر PHP. لا يلزم التثبيت لاستخدام هذه الوظائف.
تكوين وقت التشغيل
يتأثر سلوك وظائف الخطأ الإعدادات في ملف php.ini.
أخطاء وخيارات تكوين التسجيل:
اسم | افتراضي | وصف | قابل للتغيير |
---|---|---|---|
الإبلاغ عن الأخطاء | لا شيء | يحدد مستوى الإبلاغ عن الأخطاء (سواء كان صحيحا أو الثوابت اسمه) | PHP_INI_ALL |
display_errors | "1" | تحديد ما إذا كان يجب أن تتم طباعة الأخطاء على الشاشة، أو إذا كان ينبغي أن تكون مخفية من المستخدم. ملاحظة: يجب عدم استخدام هذه الميزة على نظم الإنتاج (فقط لدعم التنمية الخاص بك) | PHP_INI_ALL |
display_startup_errors | "0" | حتى عندما display_errors على، لا يتم عرض الأخطاء التي تحدث أثناء تسلسل بدء التشغيل PHP ل ملاحظة: من المستحسن أن تبقي display_startup_errors الخروج، إلا من أجل التصحيح | PHP_INI_ALL |
log_errors | "0" | يحدد ما إذا كان ينبغي تسجيل رسائل الخطأ النصي إلى سجل خطأ للملقم أو error_log. ملاحظة: ينصح بشدة لاستخدام تسجيل الخطأ بدلا من الخطأ التي تظهر على مواقع الانتاج | PHP_INI_ALL |
log_errors_max_len | "1024" | يحدد الحد الأقصى لطول log_errors في بايت. قيمة "0" يمكن استخدامها للا ينطبق أي الحد الأقصى لطول على الإطلاق. يتم تطبيق هذا الطول إلى أخطاء بتسجيل الدخول، عرض أخطاء، وكذلك ل$ php_errormsg (available since PHP 4.3) | PHP_INI_ALL |
ignore_repeated_errors | "0" | تحديد ما إذا كان لتسجيل الرسائل الخطأ المتكرر. عند تعيينها إلى "1" انها لن تسجيل الأخطاء مع الأخطاء المتكررة من نفس الملف على نفس الخط (available since PHP 4.3) | PHP_INI_ALL |
ignore_repeated_source | "0" | تحديد ما إذا كان لتسجيل الرسائل الخطأ المتكرر. عند تعيينها إلى "1" انها لن تسجيل الأخطاء مع الأخطاء المتكررة من ملفات أو خطوط مصدر مختلفة (available since PHP 4.3) | PHP_INI_ALL |
report_memleaks | "1" | إذا تم تعيين إلى "1" (the default) ، فإن هذه المعلمة تظهر تقرير تسرب الذاكرة الكشف من قبل إدارة الذاكرة زند (available since PHP 4.3) | PHP_INI_ALL |
track_errors | "0" | إذا تم تعيين إلى "1" ، وسوف تكون آخر رسالة خطأ دائما موجودة في $ php_errormsg متغير | PHP_INI_ALL |
html_errors | "1" | إيقاف علامات HTML في رسائل الخطأ | PHP_INI_ALL PHP_INI_SYSTEM في PHP <= 4.2.3. |
xmlrpc_errors | "0" | إيقاف التقارير وصيغ خطأ عادي أخطاء كرسالة خطأ XML-RPC (available since PHP 4.1) | PHP_INI_SYSTEM |
xmlrpc_error_number | "0" | تستخدم قيمة العنصر faultCode XML-RPC (available since PHP 4.1) | PHP_INI_ALL |
docref_root | "" | (متوفر منذ PHP 4.3) | PHP_INI_ALL |
docref_ext | "" | (متوفر منذ PHP 4.3.2) | PHP_INI_ALL |
error_prepend_string | لا شيء | تحدد سلسلة لإخراج قبل رسالة خطأ | PHP_INI_ALL |
error_append_string | لا شيء | تحدد سلسلة لإخراج بعد رسالة خطأ | PHP_INI_ALL |
error_log | لا شيء | يحدد اسم الملف حيث يجب أن تكون مسجلا أخطاء النصي. يجب أن يكون الملف قابل للكتابة بواسطة المستخدم خادم الإنترنت. إذا تم استخدام سيسلوغ قيمة خاصة، يتم إرسال الأخطاء إلى مسجل النظام بدلا | PHP_INI_ALL |
PHP خطأ وتسجيل وظائف
وظيفة | وصف |
---|---|
debug_backtrace() | يولد المتتبع الخلفي |
debug_print_backtrace() | يطبع المتتبع الخلفي |
error_get_last() | إرجاع الخطأ الأخير الذي حدث |
error_log() | يرسل رسالة خطأ إلى سجل، إلى ملف، أو إلى حساب البريد |
error_reporting() | يحدد التي ذكرت أخطاء |
restore_error_handler() | يعيد معالج الأخطاء السابقة |
restore_exception_handler() | يعيد معالج الاستثناء السابق |
set_error_handler() | يحدد وظيفة معالج الأخطاء المعرفة من قبل المستخدم |
set_exception_handler() | يحدد وظيفة معالج استثناء المعرفة من قبل المستخدم |
trigger_error() | إنشاء رسالة خطأ على مستوى المستخدم |
user_error() | الاسم المستعار trigger_error() |
PHP 5 خطأ وتسجيل الثوابت محددة مسبقا
القيمة | ثابت | وصف |
---|---|---|
1 | E_ERROR | قاتلة أخطاء وقت التشغيل. الأخطاء التي لا يمكن استردادها من. وتوقف تنفيذ البرنامج النصي |
2 | E_WARNING | تحذيرات وقت التشغيل (non-fatal errors) . لا توقف تنفيذ البرنامج النصي |
4 | E_PARSE | تجميع لمرة وتحليل الأخطاء. تحليل يجب إنشاء أخطاء فقط بواسطة محلل |
8 | E_NOTICE | إشعارات وقت التشغيل. وجد النصي شيئا قد يكون خطأ، ولكن يمكن أن يحدث أيضا عند تشغيل برنامج نصي عادة |
16 | E_CORE_ERROR | أخطاء قاتلة عند بدء التشغيل PHP. هذا هو مثل E_ERROR، باستثناء يتم إنشاؤها من قبل جوهر PHP |
32 | E_CORE_WARNING | أخطاء غير مميتة عند بدء التشغيل PHP. هذا هو مثل E_WARNING، باستثناء يتم إنشاؤها من قبل جوهر PHP |
64 | E_COMPILE_ERROR | قاتلة أخطاء وقت الترجمة. هذا هو مثل E_ERROR، باستثناء يتم إنشاؤها من قبل من برمجة محرك زند |
128 | E_COMPILE_WARNING | غير مميتة أخطاء وقت الترجمة. هذا هو مثل E_WARNING، باستثناء يتم إنشاؤها من قبل من قبل محرك زند البرمجة |
256 | E_USER_ERROR | فادح الخطأ المقدم من المستخدمين. هذا هو مثل E_ERROR، إلا أنه يتم إنشاؤها في التعليمات البرمجية PHP باستخدام PHP وظيفة trigger_error() |
512 | E_USER_WARNING | غير فادح تحذير المستخدم لتوليد. هذا هو مثل E_WARNING، إلا أنه يتم إنشاؤها في التعليمات البرمجية PHP باستخدام PHP وظيفة trigger_error() |
1024 | E_USER_NOTICE | المستخدم إنشاء إشعار. هذا هو مثل E_NOTICE، إلا أنه يتم إنشاؤها في التعليمات البرمجية PHP باستخدام PHP وظيفة trigger_error() |
2048 | E_STRICT | تمكين أن يكون PHP اقتراح التغييرات في التعليمات البرمجية التي تضمن أفضل قابلية التشغيل البيني والتوافق إلى الأمام من التعليمات البرمجية (منذ PHP 5 ولكنها لم تدرج في E_ALL حتى PHP 5.4) |
4096 | E_RECOVERABLE_ERROR | خطأ فادح Catchable. يشير إلى أن حدث خطأ ربما خطرة، ولكن لم يترك المحرك في حالة غير مستقرة. إذا لم يتم اكتشاف الخطأ بواسطة مؤشر يحددها المستخدم، وتطبيق إحباط لأنه كان E_ERROR (Since PHP 5.2) |
8192 | E_DEPRECATED | إشعارات وقت التشغيل. تمكين هذه لتلقي تحذيرات حول التعليمات البرمجية التي لن تعمل في الإصدارات المستقبلية (Since PHP 5.3) |
16384 | E_USER_DEPRECATED | رسالة تحذير المستخدم لتوليد. هذا هو مثل E_DEPRECATED، إلا أنه يتم إنشاؤها في التعليمات البرمجية PHP باستخدام PHP وظيفة trigger_error() (منذ PHP 5.3) |
32767 | E_ALL | تمكين كافة الأخطاء PHP والتحذيرات (except E_STRICT in versions < 5.4) |