PHP set_exception_handler() º¯Êý

ʵÀý

ÉèÖÃÓû§¶¨ÒåµÄÒì³£´¦Àíº¯Êý£º

<?php
// Óû§¶¨ÒåµÄÒì³£´¦Àíº¯Êý
 function myException($exception) {
     echo "<b>Exception:</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 ÖеIJÎÊýÀàÐÍ´Ó Exception ¸ü¸ÄΪ Throwable¡£

PHP 5.5£ºÖ®Ç°£¬Èç¹û´«µÝ NULL£¬¸Ãº¯Êý·µ»Ø TRUE¡£´Ó PHP 5.5 Æð·µ»ØÖ®Ç°µÄ´¦Àí³ÌÐò¡£

VUE