Dai Chong's blog

今天一直在和别的公司对接接口,之前的对接都没有做来往日志,这样的话功能出了问题要针对性的找到问题的原因比较麻烦,逼不得已只能做个日志记录一下。而且程序还没有使用任何框架,又不想研究别人的代码,没办法只能自己简单的做一个写入日志的功能。

实现逻辑:


写入文件
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
/**
* 写入日志
*
* @access public
* @param must $path 写入日志的地址(./log/)
* @param must $data 写入内容
* @param optional $fileName 文件名称
* @return Number 1 成功 0 失败
*/
public static function write_log($path,$data,$fileName='error'){
$file_path = $path.date('Y-m-d');
//文件夹不存在创建文件夹
if(!file_exists($file_path)){
mkdir($file_path,0777,true);
}
//文件完整路径
$file = $path.date('Y-m-d')."/".$fileName.".txt";
//打开文件 "a+" 读写方式打开,将文件指针指向文件末尾。如果文件不存在则尝试创建
$handle = fopen($file,"a+");
//写入文件
$str = fwrite($handle,date('Y-m-d H:i:s').':'.json_encode($data)."\n");
//关闭文件
fclose($handle);
if($str){
return 1;
}else{
return 0;
}
}

调用方法:


调用
1
echo Db::write_log('./log/',array(1,2,3,4,5,6,7),'greenCloudReturnMsg');

效果:





 评论