发布网友 发布时间:2022-04-28 02:00
共2个回答
懂视网 时间:2022-04-28 06:21
php设置日志输出的方法:使用php的写入文件函数,把数据写入到事先定义好的文件中,代码为【file_put_contents(file,data,mode,context)】。
php设置日志输出的方法:
思想:在想要输出log日志的地方,使用php的写入文件函数,把数据写入到事先定义好的文件中。
php代码如下:
//输出日志 public function outputLog() { logOutput(time()); sleep(3); $arr = array("k1" => "v1", "k2" => "v2"); logOutput($arr); $this->display(); } logOutput()函数: /** * @param string,array $data 需要输出到日志中的数据 * @return null */ function logOutput($data) { //数据类型检测 if (is_array($data)) { $data = json_encode($data); } $filename = "./log/".date("Y-m-d").".log"; $str = date("Y-m-d H:i:s")." $data"." "; file_put_contents($filename, $str, FILE_APPEND|LOCK_EX); return null; }
file_put_contents() 函数把一个字符串写入文件中。
与依次调用 fopen(),fwrite() 以及 fclose() 功能一样。
语法
file_put_contents(file,data,mode,context)
参数 描述
file 必需。规定要写入数据的文件。如果文件不存在,则创建一个新文件。
data 可选。规定要写入文件的数据。可以是字符串、数组或数据流。
mode 可选。规定如何打开/写入文件。可能的值:
FILE_USE_INCLUDE_PATH
FILE_APPEND 追加数据而不是覆盖
LOCK_EX 写入数据时,锁住文件,防止其他人对文件的改动
context 可选。规定文件句柄的环境。(不懂何用)
context 是一套可以修改流的行为的选项。若使用 null,则忽略。
意义:
在可能出错的地方,进行调试时,输出错误信息
输出变量,进行调试,可以避免平常的var_dump、dump函数打印一长串的数据,影响页面布局
相关免费学习推荐:php编程(视频)
热心网友 时间:2022-04-28 03:29
要想让php-fpm显示错误日志,首先需要配置php-fpm。
在php-fpm的配置文件中(一般位于php安装目录下的etc/php-fpm.conf)配置php错误日志的文件路径。
1
2
3
4
5
6
; Error log file
; If it's set to "syslog", log is sent to syslogd instead of being written
; in a local file.
; Note: the default prefix is /home/wangwei/php/var
; Default Value: log/php-fpm.log
;error_log = log/php-fpm.log
如上是我的php-fpm.conf文件中配置错误日志的地方。把error_log = log/php-fpm.log之前的;去掉,然后修改为:
1
2
3
4
5
6
; Error log file
; If it's set to "syslog", log is sent to syslogd instead of being written
; in a local file.
; Note: the default prefix is /home/wangwei/php/var
; Default Value: log/php-fpm.log
error_log = /home/work/log/php-fpm.log.wf
修改之后,保存配置,然后重启php-fpm就可以啦。
注意如果用相对路径的话,的路径的前缀是基于php安装目录的var目录的。