将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 <"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); } } } "htmlcode"><"crifanLib.php"; //test log $crifanLib = new crifanLib(); $crifanLib->logInit("/xxx/access_token/crifanLibTest.log"); $crifanLib->logWrite("This is crifanLib log test message."); $crifanLib->logDeinit(); "http://xxx/access_token/wx_access_token.php">http://xxx/access_token/wx_access_token.php页面是没有任何输出的:
然后的确生成了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
<"$timeStr ($scriptName) $logContent" . PHP_EOL, FILE_APPEND); } } "htmlcode"><"crifanLib.php"; //test log $crifanLib = new crifanLib(); $crifanLib->logInit("/xxx/logTest.log"); $crifanLib->logWrite("This is crifanLib log test message using file_put_contents"); "mailto:root@chantyou:access_token">root@chantyou:access_token# ll
total 16
-rw-r--r-- 1 root root 9524 Jul 27 18:16 crifanLib.php
-rwxrwxrwx 1 root root 561 Jul 27 18:18 wx_access_token.php
root@chantyou:access_token# ll
total 20
-rw-r--r-- 1 root root 9524 Jul 27 18:16 crifanLib.php
-rw-r--r-- 1 apache apache 76 Jul 27 18:19 logTest.log
-rwxrwxrwx 1 root root 561 Jul 27 18:18 wx_access_token.php
root@chantyou:access_token# cat logTest.log
[2015-07-27 12:05:47] (wx_access_token) This is crifanLib log test message using file_put_contents
root@chantyou:access_token#
如图:注:
期间参考:
PHP: is_resource – Manual
【总结】
1.此处可以通过:
fopen创建log文件
fwrite写入文件信息
fclose关闭文件
去实现log信息写入到文件中的。2.更好的做法是:
直接用更方便的
file_put_contents直接输出内容到log文件
即可。以上就是将log信息写入服务器中的log文件文件全部内容,希望大家喜欢。
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
暂无评论...
更新日志
2024年11月27日
2024年11月27日
- 凤飞飞《我们的主题曲》飞跃制作[正版原抓WAV+CUE]
- 刘嘉亮《亮情歌2》[WAV+CUE][1G]
- 红馆40·谭咏麟《歌者恋歌浓情30年演唱会》3CD[低速原抓WAV+CUE][1.8G]
- 刘纬武《睡眠宝宝竖琴童谣 吉卜力工作室 白噪音安抚》[320K/MP3][193.25MB]
- 【轻音乐】曼托凡尼乐团《精选辑》2CD.1998[FLAC+CUE整轨]
- 邝美云《心中有爱》1989年香港DMIJP版1MTO东芝首版[WAV+CUE]
- 群星《情叹-发烧女声DSD》天籁女声发烧碟[WAV+CUE]
- 刘纬武《睡眠宝宝竖琴童谣 吉卜力工作室 白噪音安抚》[FLAC/分轨][748.03MB]
- 理想混蛋《Origin Sessions》[320K/MP3][37.47MB]
- 公馆青少年《我其实一点都不酷》[320K/MP3][78.78MB]
- 群星《情叹-发烧男声DSD》最值得珍藏的完美男声[WAV+CUE]
- 群星《国韵飘香·贵妃醉酒HQCD黑胶王》2CD[WAV]
- 卫兰《DAUGHTER》【低速原抓WAV+CUE】
- 公馆青少年《我其实一点都不酷》[FLAC/分轨][398.22MB]
- ZWEI《迟暮的花 (Explicit)》[320K/MP3][57.16MB]