Server : Apache System : Linux iZ2vcgyutqttsd1p850kl8Z 3.10.0-1160.92.1.el7.x86_64 #1 SMP Tue Jun 20 11:48:01 UTC 2023 x86_64 User : www ( 1000) PHP Version : 5.6.40 Disable Function : passthru,exec,system,putenv,chroot,chgrp,chown,shell_exec,popen,proc_open,pcntl_exec,ini_alter,ini_restore,dl,openlog,syslog,readlink,symlink,popepassthru,pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,imap_open,apache_setenv Directory : /www/wwwroot/saimikebio.com/mobile/include/modules/payment/wxpay/ |
<?php //以下为日志 interface ILogHandler { public function write($msg); } class CLogFileHandler implements ILogHandler { private $handle = null; public function __construct($file = '') { $this->handle = fopen($file,'a'); } public function write($msg) { fwrite($this->handle, $msg, 4096); } public function __destruct() { fclose($this->handle); } } class Log { private $handler = null; private $level = 15; private static $instance = null; private function __construct(){} private function __clone(){} public static function Init($handler = null,$level = 15) { if(!self::$instance instanceof self) { self::$instance = new self(); self::$instance->__setHandle($handler); self::$instance->__setLevel($level); } return self::$instance; } private function __setHandle($handler){ $this->handler = $handler; } private function __setLevel($level) { $this->level = $level; } public static function DEBUG($msg) { self::$instance->write(1, $msg); } public static function WARN($msg) { self::$instance->write(4, $msg); } public static function ERROR($msg) { $debugInfo = debug_backtrace(); $stack = "["; foreach($debugInfo as $key => $val){ if(array_key_exists("file", $val)){ $stack .= ",file:" . $val["file"]; } if(array_key_exists("line", $val)){ $stack .= ",line:" . $val["line"]; } if(array_key_exists("function", $val)){ $stack .= ",function:" . $val["function"]; } } $stack .= "]"; self::$instance->write(8, $stack . $msg); } public static function INFO($msg) { self::$instance->write(2, $msg); } private function getLevelStr($level) { switch ($level) { case 1: return 'debug'; break; case 2: return 'info'; break; case 4: return 'warn'; break; case 8: return 'error'; break; default: } } protected function write($level,$msg) { if(($level & $this->level) == $level ) { $msg = '['.date('Y-m-d H:i:s').']['.$this->getLevelStr($level).'] '.$msg."\n"; $this->handler->write($msg); } } }