PHP set_error_handler() 函数
实例
通过 set_error_handler() 函数设置用户自定义的错误处理程序,然后触发错误(通过 trigger_error()):
<?php // 用户定义的错误处理函数 function myErrorHandler($errno, $errstr, $errfile, $errline) { echo "<b>Custom error:</b> [$errno] $errstr<br>"; echo " Error on line $errline in $errfile<br>"; } // 设置用户定义的错误处理函数 set_error_handler("myErrorHandler"); $test=2; // 触发错误 if ($test>1) { trigger_error("A custom error has been triggered"); } ?>
以上代码的输出类似这样:
కస్టమ్ తప్పు: [1024] కస్టమ్ తప్పు ప్రాసెసర్ ప్రారంభించబడింది C:\webfolder\test.php లో 14 వ పంక్తిలో తప్పు
నిర్వచనం మరియు ఉపయోగం
set_error_handler() ఫంక్షన్ వినియోగదారి నిర్వచించబడిన తప్పు ప్రాసెసర్ అనుసరిస్తుంది.
ప్రక్కనా పేర్కొన్నది:ఈ ఫంక్షన్ ఉపయోగించినప్పుడు, ప్రామాణిక PHP తప్పు ప్రాసెసర్ పరిగణనలోకి లేదు, మరియు అవసరపడితే, వినియోగదారి నిర్వచించబడిన తప్పు ప్రాసెసర్ die() ద్వారా స్క్రిప్ట్ అంతం చేయబడుతుంది.
ప్రక్కనా పేర్కొన్నది:తప్పు అనేకసార్లు స్క్రిప్ట్ అమలు ముందు జరిగినప్పుడు (ఉదా. ఫైల్ అప్లోడ్ చేయడం వంటి), తప్పు ప్రాసెసర్ పెరిగిపోయినప్పుడు తప్పు ప్రాసెసర్ అనుసరించబడదు ఎందుకంటే అది అప్పటికే నమోదు చేయబడలేదు.
సంకేతం
set_error_handler(errorhandler,E_ALL|E_STRICT);
పారామీటర్స్ | వివరణ |
---|---|
errorhandler | అవసరం. వినియోగదారి తప్పు ప్రాసెసర్ పేరును నిర్ణయించడానికి నిర్ణయించబడింది. |
E_ALL|E_STRICT | ఎంపిక. మార్గదర్శక తప్పు నివేదిక స్థాయిని నిర్ణయించడానికి వినియోగదారి నిర్వచించబడిన తప్పు ప్రాసెసర్. అప్రమేయంగా "E_ALL". |
సాంకేతిక వివరాలు
వారు పొందించబడే వారు: | ముందు నిర్వచించబడిన తప్పు ప్రాసెసర్ స్ట్రింగ్. |
---|---|
PHP వర్షన్: | 4.0.1+ |
PHP అప్డేట్ లాగ్: |
PHP 5.5: పారామీటర్స్ errorhandler ఇప్పుడు NULL అంగీకరించబడుతుంది PHP 5.2: తప్పు ప్రాసెసర్ FALSE తిరిగి చెప్పడానికి $php_errormsg అవసరం. |