php如何将log文件翻译成中文,PHP如何将log信息写入服务器中的log文件

这篇文章主要介绍了PHP如何将log信息写入服务器中的log文件,需要的朋友可以参考下

将log信息写入服务器中的log文件文件,折腾了一大圈终于找到了解决方案,具体内容如下:

折腾:

【记录】php中如何写类和如何使用类

期间,需要整理出一份,,可配置的,通用的,log系统。

支持写入log信息到log文件中。

【折腾过程】

1.搜:

php log to file

参考:

PHP: error_log – Manual

PHP: syslog – Manual

How to create logs with PHP – Web Services Wiki

Write to a log file with PHP | Redips spideR Net

下载代码:

Download redips10.tar.gz

2.期间:

【已解决】PHP中函数前面加上at符号@的作用

3.然后用代码:

crifanLib.php

logFile = $inputLogFile ? $inputLogFile : $defautLogFile;

// open log file for writing only and place file pointer at the end of the file

// (if the file does not exist, try to create it)

$this->logFp = fopen($this->logFile, 'a') or exit("Can't open $this->logFile!");

}

/*

Write log info to file

*/

function logWrite($logContent){

// if file pointer doesn't exist, then open log file

if (!is_resource($this->logFp)) {

$this->logInit();

}

// define script name

$script_name = pathinfo($_SERVER['PHP_SELF'], PATHINFO_FILENAME);

// define current time and suppress E_WARNING if using the system TZ settings

// (don't forget to set the INI setting date.timezone)

$time = @date('[Y-m-d H:i:s] ');

// write current time, script name and message to the log file

fwrite($this->logFp, "$time ($script_name) $logContent" . PHP_EOL);

}

/*

Deinit log

*/

function logDeinit(){

if (is_resource($this->logFp)) {

fclose($this->logFp);

}

}

}

?>

然后测试代码:

logInit("/xxx/access_token/crifanLibTest.log");

$crifanLib->logWrite("This is crifanLib log test message.");

$crifanLib->logDeinit();

?>

然后去执行对应的代码:

页面是没有任何输出的:

99d92f028204117385d4c8e9df9d0b80.png

然后的确生成了log文件了:

root@chantyou:php# cd access_token/

root@chantyou:access_token# ll

total 16

-rwxrwxrwx 1 root root 9335 Jul 27 17:51 crifanLib.php

-rwxrwxrwx 1 root root 567 Jul 27 17:52 wx_access_token.php

root@chantyou:access_token# ll

total 20

-rwxrwxrwx 1 root root 9335 Jul 27 17:51 crifanLib.php

-rw-r--r-- 1 apache apache 77 Jul 27 17:56 crifanLibTest.log

-rwxrwxrwx 1 root root 567 Jul 27 17:52 wx_access_token.php

root@chantyou:access_token# cat crifanLibTest.log

[2015-07-27 10:10:33] (wx_access_token) This is crifanLib log test message.

root@chantyou:access_token#

【注意】

要记得给对应的(此处是Linux服务器中的对应的文件夹添加写权限:

root@chantyou:php# ll

total 48

drwxr-xr-x 2 root root 4096 Jul 27 17:55 access_token

-rwxr-xr-x 1 root root 1091 Sep 25 2014 errorCode.php

-rw-r--r-- 1 root root 2230 Jun 10 14:16 MicromsgVerify.php

-rwxr-xr-x 1 root root 4288 Sep 25 2014 pkcs7Encoder.php

-rwxr-xr-x 1 root root 452 Sep 15 2014 Readme.txt

-rwxr-xr-x 1 root root 724 Sep 22 2014 sha1.php

drwxr-xr-x 2 root root 4096 Jul 20 12:34 wechat_encypt

-rwxr-xr-x 1 root root 5327 Sep 15 2014 WXBizMsgCrypt.php

-rwxrwxrwx 1 root root 2455 Jul 16 18:06 wx_didaosuzhou.php

-rwxr-xr-x 1 root root 1346 Sep 22 2014 xmlparse.php

root@chantyou:php# chmod ugo+wx access_token/

root@chantyou:php# ll

total 48

drwxrwxrwx 2 root root 4096 Jul 27 17:55 access_token

-rwxr-xr-x 1 root root 1091 Sep 25 2014 errorCode.php

-rw-r--r-- 1 root root 2230 Jun 10 14:16 MicromsgVerify.php

-rwxr-xr-x 1 root root 4288 Sep 25 2014 pkcs7Encoder.php

-rwxr-xr-x 1 root root 452 Sep 15 2014 Readme.txt

-rwxr-xr-x 1 root root 724 Sep 22 2014 sha1.php

drwxr-xr-x 2 root root 4096 Jul 20 12:34 wechat_encypt

-rwxr-xr-x 1 root root 5327 Sep 15 2014 WXBizMsgCrypt.php

-rwxrwxrwx 1 root root 2455 Jul 16 18:06 wx_didaosuzhou.php

-rwxr-xr-x 1 root root 1346 Sep 22 2014 xmlparse.php

否则会报错的:

Can't open /xxx/access_token/crifanLibTest.log file!

4.不过突然想起来:

之前已经学过了,

file_put_contents

就可以替代了:fopen,fwrite,fclose了。

所以再去优化为:

crifanLib.php

本文原创发布php中文网,转载请注明出处,感谢您的尊重!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值