Twitter 今天即将飞回广州00:42夜已深,刚写完日记 杭州 释然 回味 “我会回来滴”灰大狼
 PHPma >> Php > PHP错误日记保存函数mrWriteLog

错误日记保存,打印信息,PHP程序自带错误信息保存函数error_log()其实已经很好用,而且我发现好多程序员根本不用此函数,所以小编写如下的调试函数(亦可用于调试,比如AJAX、将信息写入到文件中;查看是否获取到相应的数据)方便自己调用

phpma.com

/**
 * 数组数据处理:键名变变量,变量的值=value
 * 一般用于一维数组,且键名最好不是数字、各不相同。
 * @param array $data
 * @return $str
 */
function mrPostToKeyValue($data)
{
	foreach ($data AS $k => $v) {
		if(is_array($v)) {
			 mrPostToKeyValue($v);
		}else{
			$str .= $k . '=>' . $v . ' ';
		}
	}
	return $str."\r\n";
}
51ruan.com

/**
 * 错误日志保存函数。
 * @param string $err 错误信息
 * @return $err
 */
function mrWriteLog($err){
	$month = date('Ym');
	$day = date('md');
	$dirname = LOG_ROOT . $month;
	if(!is_dir($dirname)) {
		mkdir($dirname,0777);
	}
	$filename = $dirname . '\\' . $day .' log.txt';
	if(!is_file($filename)) {
		fopen($filename, 'a+');
	}
	$err = is_array($err) ? mrPostToKeyValue($err) : $err;
	$err = date('Y-m-d:H:i:s')."\r\n". $err . "\r\n";
	if (is_writable($filename)) {
			if (!$handle = fopen($filename, 'a')) {
				$err = "不能打开 $filename";
			}	else {
				if (!fwrite($handle, $err)) {
					$err = "不能写入 $filename";
				} else {
					$err = "写入$filename";
				}
			}
			fclose($handle);
	} else {
			$err =  "不可读 $filename ";
	}
	header("Content-type: text/html; charset=UTF-8");
	return $err;
}
                            /**
                             ** 温馨提示:本站所有文章均来自PHPma精心编辑,99%原创,转帖之人需保留本站的链接
                             ** 本站所有文章仅代表本人观点,转帖概不负责
                             ** 作者:PHPma
                             **/
                        

About PHPma

PHPma一个主要关注PHP技术为主的技术杂烩站点

一个在PHP技术圈子里面活跃D虾米,分享一个草根IT程序员D劳动成果,亦是此草根IT程序员发泄的场所。

Email:phpmacom@gmail.com

网站分类

copyright 2010 - 2012, 版权所有  All Rights Reserved