不会吹牛不会坎天的phper,仅以代码呈上,谢谢阅读!
/**
* 打印log日志
* @param 文件名 第几行 日志内容
*/
function wx_log($basename=null,$num=null,$msg=null){
if(is_array($msg)){
$msg = json_encode($msg,JSON_UNESCAPED_UNICODE);
}
//$msg = [2018-04-11 09:22:56]文件名:wxpay,第29行,[info]:日志信息
$msg = '['.date("Y-m-d H:i:s").']'.'文件名:'.$basename.',第'.$num.'行,'.'[info]:'.$msg;
$rootpath = ROOT_PATH.DS.'public'. DS .'logs'. DS;
makedir($rootpath);
// 日志文件名:日期.txt
$path = $rootpath.date("Ymd").'.txt';
file_put_contents($path, $msg.PHP_EOL,FILE_APPEND);
}
/**
* [makedir 迭代创建级联目录]
* @param [type] $path [目录路径]
* @return [type] [Boolean]
*/
function makedir($path){
$arr=array();
while(!is_dir($path)){
array_push($arr,$path);//把路径中的各级父目录压入到数组中去,直接有父目录存在为止(即上面一行is_dir判断出来有目录,条件为假退出while循环)
$path=dirname($path);//父目录
}
if(empty($arr)){//arr为空证明上面的while循环没有执行,即目录已经存在
// echo $path,'已经存在';
return true;
}
while(count($arr)){
$parentdir=array_pop($arr);//弹出最后一个数组单元
mkdir($parentdir);//从父目录往下创建
}
}
网友评论