وظيفة PHP set_exception_handler()

مثال

تعيين وظيفة معالجة الاستثنائية المحددة من قبل المستخدم:

<?php
// وظيفة معالجة الاستثنائية المحددة من قبل المستخدم
 function myException($exception) {
     echo "<b>استثنائية:</b> ", $exception->getMessage();
 }
 // تعيين وظيفة معالجة الاستثناء المحددة من قبل المستخدم
 set_exception_handler("myException");
// إلقاء الاستثناء
throw new Exception("Uncaught exception occurred!");
 ?> 

يبدو مخرج الكود أعلاه مثل هذا:

Exception: Uncaught exception occurred!

التعريف والاستخدام

تحدد وظيفة set_exception_handler() معالج الاستثناء المحدد من قبل المستخدم.

سيتم إيقاف تنفيذ البرنامج عند استدعاء هذا معالج الاستثناء.

النحو

set_exception_handler(exceptionhandler);
المعامل الوصف
exceptionhandler

مطلوب. يحدد اسم الوظيفة التي يتم استدعاؤها عند حدوث استثناء غير محتمل.

التعليقات:يمكن أيضًا تمرير قيمة NULL لتعيين وظيفة معالجة الاستثناء إلى القيمة الافتراضية.

تفاصيل تقنية

القيمة المعدلة:

يتم إرجاع نص يحتوي على اسم معالج الأخطاء المحدد مسبقًا، أو إرجاع NULL في حالة الخطأ.

إذا لم يتم تعريف معالج الأخطاء مسبقًا، سيتم أيضًا إرجاع NULL.

إذا تم استخدام NULL كمعامل، يتم إعادة تعيين المعالج إلى حالة التشغيل الافتراضية، وسيتم إرجاع TRUE.

PHP إصدار: 5.0+
PHP سجل التحديثات:

PHP 7.0.0: يتم تمريره إلى exception_handler نوع المعامل من Exception إلى Throwable تم تغييره.

PHP 5.5: قبل ذلك، إذا تم تمرير NULL، فإن الوظيفة تعود TRUE. من PHP 5.5، تعود إلى المعالج السابق.