ini_set('error_log','errorLog.txt');#记录下来所有发现的错误到文件里去。
ini_set('display_errors', 1);#显示错误
ini_set('memory_limit','512M');#有些错误的出现和内存使用有关系,把这个值调大试试看
ini_set("display_errors",0)
ini_set("error_reporting",E_ALL);
ini_set("error_log","")
ini_set("log_errors",1);
#错误显示级别
if(defined('E_DEPRECATED'))
error_reporting(E_ALL & ~E_NOTICE^E_DEPRECATED);
else
error_reporting(E_ALL & ~E_NOTICE);
#所有 ini_set的内容都可以在php.ini中定义
#转义输出HTML代码
echo htmlspecialchars($html);
echo ''.htmlspecialchars($html).'';
#实时推送到浏览器的输出
ob_start();
ob_end_flush();
ob_implicit_flush(true);
echo str_pad('',4096);
echo 'hello';
flush();
#查看堆栈信息 echo '
';debug_print_backtrace();echo '';
#指定时区
date_default_timezone_set("PRC");
#指定输出的HTML编码
header("Content-Type: text/html; charset=utf-8");
#打印函数所有的参数
echo '
';print_r(func_get_args());echo '';
#显示当前文件,行,以及执行时间
$mtime = explode(' ', microtime());
$time_start = $mtime[1] + $mtime[0];
function getmicrotime() {
list($usec, $sec) = explode(" ",microtime());
return ((float)$usec + (float)$sec);
}
function get_use_time($min=false) {
global $time_start;
$time_end = getmicrotime();
$times = $time_end - $time_start;
$times = sprintf('%.5f',$times);
if($min==false) {
$use_time = "用时:". $times ."秒";
}else {
$use_time = $times;
}
return $use_time;
}
echo __FILE__.':'.__LINE__.':'. get_use_time().'';
/**
* 错误处理
*/
function _e($msg,$type=''){
static $i=0;
$i++;
$error['msg'] = $msg;
$error['type'] = $type;
$GLOBALS[ERROR_STACK_NAME][$i] = $error;
return ERROR_STACK_NAME.$i;
}
function onError($errNo, $errMsg, $file, $line, $errcontext) {
$errorlevels = array(
2048 => 'Warning',
2048 => 'Notice',
1024 => 'Warning',
1024 => 'Notice',
512 => 'Warning',
256 => 'Error',
128 => 'Warning',
64 => 'Error',
32 => 'Warning',
16 => 'Error',
8 => 'Notice',
4 => 'Error',
2 => 'Warning',
1 => 'Error');
//print_r(array('code'=>$errno, 'string'=>$errstr, 'file'=>$errfile, 'line'=>$errline,'codeinfo'=>$errorlevels[$errno]));
$t = error_reporting();
if (!($errNo & error_reporting())) {
return;
}
$errType = $errNo;
/** Get Advance Error msg **/
if(strpos($errMsg,ERROR_STACK_NAME)==0){
$i = substr($errMsg,strlen(ERROR_STACK_NAME));
if(isset($GLOBALS[ERROR_STACK_NAME][$i])){
$error = $GLOBALS[ERROR_STACK_NAME][$i];
$errMsg = $error['msg'];
$errType = $error['type'];
}
}
$errMsg = nl2br($errMsg);
if($errType=='smarty'){
$errType = '模版系统错误';
}elseif ($errType=='sql'){
$errType = '数据库操作错误';
}else{
$errType = "PHP错误[$errType]";
}
$title = '系统错误';
$msg = "
错误类型:
$errType
错误位置:
$file 第 $line 行
错误信息:
$errMsg
";
echo $msg;flush();
//msgBox($title,$msg,'',false,2);
exit();
}
function shutdown_function(){
$errorlevels = array(
2048 => 'Warning',
2048 => 'Notice',
1024 => 'Warning',
1024 => 'Notice',
512 => 'Warning',
256 => 'Error',
128 => 'Warning',
64 => 'Error',
32 => 'Warning',
16 => 'Error',
8 => 'Notice',
4 => 'Error',
2 => 'Warning',
1 => 'Error');
$error = error_get_last();
if($error){
echo '