2012-02-06 4 views
21

मैं एक बड़ी परियोजना (एकाधिक टीमों) पर काम कर रहा हूं इसलिए मेरे पास कोड पर पूरा नियंत्रण नहीं है। दुर्भाग्यवश, कोड में कई स्थानों पर त्रुटि_ रिपोर्टिंग बदल दी गई है। जब मैं कोड में एक निश्चित बिंदु पर जाता हूं, तो मैं देखना चाहता हूं कि वर्तमान में कौन सी त्रुटि रिपोर्टिंग सेट की गई है। क्या इसे पूरा करने का कोई रास्ता है?PHP में वर्तमान में सेट त्रुटि रिपोर्टिंग स्तर को मैं कैसे प्रदर्शित (गूंज/प्रिंट) कर सकता हूं?

उत्तर

36

http://www.php.net/error_reporting

int error_reporting ([ int $level ])

अगर कोई स्तर पैरामीटर दिया जाता है पुराने error_reporting स्तर या मौजूदा स्तर देता है।

स्ट्रिंग में स्तर (जिसे पूर्णांक के रूप में वापस किया जाता है) को कास्ट करने के लिए आप लिंक द्वारा प्रदान किए गए उदाहरणों का भी उपयोग कर सकते हैं। उदाहरण के लिए:

function error_level_tostring($intval, $separator = ',') 
{ 
    $errorlevels = array(
     E_ALL => 'E_ALL', 
     E_USER_DEPRECATED => 'E_USER_DEPRECATED', 
     E_DEPRECATED => 'E_DEPRECATED', 
     E_RECOVERABLE_ERROR => 'E_RECOVERABLE_ERROR', 
     E_STRICT => 'E_STRICT', 
     E_USER_NOTICE => 'E_USER_NOTICE', 
     E_USER_WARNING => 'E_USER_WARNING', 
     E_USER_ERROR => 'E_USER_ERROR', 
     E_COMPILE_WARNING => 'E_COMPILE_WARNING', 
     E_COMPILE_ERROR => 'E_COMPILE_ERROR', 
     E_CORE_WARNING => 'E_CORE_WARNING', 
     E_CORE_ERROR => 'E_CORE_ERROR', 
     E_NOTICE => 'E_NOTICE', 
     E_PARSE => 'E_PARSE', 
     E_WARNING => 'E_WARNING', 
     E_ERROR => 'E_ERROR'); 
    $result = ''; 
    foreach($errorlevels as $number => $name) 
    { 
     if (($intval & $number) == $number) { 
      $result .= ($result != '' ? $separator : '').$name; } 
    } 
    return $result; 
} 

echo error_level_tostring(error_reporting(), ',');

+0

शानदार! इसे साझा करने के लिए धन्यवाद। – chrisdillon

संबंधित मुद्दे

 संबंधित मुद्दे