个人抽离出来一个超级简易但是实用的代码段

    public static function WriteLog($msg,$module = null,$logLevel = "DEBUG")
{
$filepath = $_SESSION["APP_ROOT"]."/log/";
if(!is_dir($filepath)) mkdir($filepath,'0777');
$MyLogFile = @fopen($filepath.date("Y-m-d").".txt",'a+'); $time = date("Y-m-d H:i:s");
if(isset($module)){$module = sprintf("\r\n归属模块:".$module."\r\n");}
$logLine = "\r\n------------------------------- $time -------------------------------\r\n";
$logLine .= $module;
$logLine .= "\r\n异常信息:$msg\r\n";
$logLine .= "\r\n错误等级:$logLevel\r\n";
fwrite($MyLogFile,$logLine);
}

网上拿下来的:

<?php

ini_set('date.timezone','Asia/Shanghai');

/**
* PHP log 类
*/ class mylog
{ private $LogFile;
private $logLevel; const DEBUG = 100;
const INFO = 75;
const NOTICE = 50;
const WARNING =25;
const ERROR = 10;
const CRITICAL = 5; private function __construct()
{
$this->logLevel = 100;
$filepath = $_SESSION["APP_ROOT"]."/log/";
$filename = date("Y-m-d").".txt";
if(!is_dir($filepath)) mkdir($filepath,'0777');
$this->LogFile = @fopen($filepath.$filename,'a+');
} public static function getInstance()
{
static $obj;
if(!isset($obj)){
$obj = new mylog();
}
return $obj;
} public static function WriteLog($msg,$module = null,$logLevel = "DEBUG")
{
$filepath = $_SESSION["APP_ROOT"]."/log/";
if(!is_dir($filepath)) mkdir($filepath,'0777');
$MyLogFile = @fopen($filepath.date("Y-m-d").".txt",'a+'); $time = date("Y-m-d H:i:s");
if(isset($module)){$module = sprintf("\r\n归属模块:".$module."\r\n");}
$logLine = "\r\n------------------------------- $time -------------------------------\r\n";
$logLine .= $module;
$logLine .= "\r\n异常信息:$msg\r\n";
$logLine .= "\r\n错误等级:$logLevel\r\n";
fwrite($MyLogFile,$logLine);
} public function LogMessage($msg,$module = null,$logLevel = mylog::DEBUG)
{
$time = date("Y-m-d H:i:s");
$strLogLevel = $this->levelToString($logLevel);
if(isset($module)){$module = sprintf("\r\n归属模块:".$module."\r\n");}
$logLine = "\r\n------------------------------- $time -------------------------------\r\n";
$logLine .= $module;
$logLine .= "\r\n错误信息:$msg\r\n";
$logLine .= "\r\n错误等级:$strLogLevel\r\n";
fwrite($this->LogFile,$logLine);
} public function levelToString($logLevel)
{
$ret = '[unknow]';
switch ($logLevel){
case mylog::DEBUG:
$ret = 'DEBUG';
break;
case mylog::INFO:
$ret = 'INFO';
break;
case mylog::NOTICE:
$ret = 'NOTICE';
break;
case mylog::WARNING:
$ret = 'WARNING';
break;
case mylog::ERROR:
$ret = 'ERROR';
break;
case mylog::CRITICAL:
$ret = 'CRITICAL';
break;
}
return $ret;
}
}
?> <?php
// include $_SESSION["APP_ROOT"].'/Lib/Class/Log.class.php';
// $logIns = LOG::getInstance();
// $logIns->LogMessage("测试一下");
//或者
// mylog::WriteLog("可以了");
?>

最新文章

  1. JS鼠标事件大全 推荐收藏
  2. Android 内存泄漏的一些情况。
  3. matlab学习第一天
  4. 入门HTML的回顾,小总结
  5. Ceph: validate that the RBD cache is active
  6. POJ 1503
  7. UVa11082 Matrix Decompressing(最小费用最大流)
  8. NodeJS利用mongoose模糊查询MongoDB
  9. 关于学习汇编的一些规则的理解(div mul cf of)
  10. 一些简单的帮助类(1)-- String的类型验证
  11. TCP和SSL
  12. linux makefle学习
  13. HEX和BIN文件的区别
  14. JAVA中的super和this关键字的使用
  15. 【python问题系列--3】TypeError: &#39;builtin_function_or_method&#39; object has no attribute &#39;__getitem__&#39;
  16. Linux 内存优化
  17. day15
  18. 从统计局采集最新的省市区镇数据,用js在浏览器中运行 V2
  19. [转帖]Office全版本零售版转换VOL
  20. Django1.11加载静态文件

热门文章

  1. Spark Streaming事务处理彻底掌握
  2. Oracle综合数据库管理命令集
  3. 算法笔记_212:第七届蓝桥杯软件类决赛真题(Java语言B组)
  4. 算法笔记_169:历届试题 兰顿蚂蚁(Java)
  5. VB LISTBOX属性
  6. kinect v1+ ubuntu 配置问题
  7. ElasticSearch异常归纳(能力工场小马哥)
  8. word2vec模型cbow与skip-gram的比较
  9. eclipse手动指定启动的jdk版本
  10. 在js里双引号里又加单引号的解决方案常用WdatePicker