zoukankan      html  css  js  c++  java
  • php log类

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

        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("
    归属模块:".$module."
    ");}
            $logLine = "
    -------------------------------  $time -------------------------------
    ";
            $logLine .= $module;
            $logLine .= "
    异常信息:$msg
    ";
            $logLine .= "
    错误等级:$logLevel
    ";
            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("
    归属模块:".$module."
    ");}
            $logLine = "
    -------------------------------  $time -------------------------------
    ";
            $logLine .= $module;
            $logLine .= "
    异常信息:$msg
    ";
           $logLine .= "
    错误等级:$logLevel
    ";
            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("
    归属模块:".$module."
    ");}
             $logLine = "
    -------------------------------  $time -------------------------------
    ";
             $logLine .= $module;
             $logLine .= "
    错误信息:$msg
    ";
             $logLine .= "
    错误等级:$strLogLevel
    ";
             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("可以了");
    ?>
  • 相关阅读:
    uva 10986
    sed命令详解及应用实例
    JavaScript弹出层
    eclipspe导入hibernate的源代码
    用eclipse查看JDK源代码
    Java设计模式之适配器模式(Adapter)
    Java计算程序运行时间
    Java的IO流各个类的使用原则
    Java的IO输入输出流类的介绍(有图)
    解惑:字、位、字节、字符、字符串。
  • 原文地址:https://www.cnblogs.com/CyLee/p/5531303.html
Copyright © 2011-2022 走看看