您的位置:

phplog日志,php error_log

本文目录一览:

php该在哪里写日志?怎么写日志?日志是做什么用的?

所谓的日志就是记录系统运行状态的数据。

一般是将信息记录到文本文件或数据库中。

比如:

?php

function writeLog($msg){

$logFile = date('Y-m-d').'.txt';

$msg = date('Y-m-d H:i:s').' '.$msg."\r\n";

file_put_contents($logFile,$msg,FILE_APPEND );

}

//调用上面的函数,写一条信息进日志文件

writeLog('这是测试日志信息');

?

PHP的错误日志文件“php_error_log”可以直接删除么?

任何时辰删除都是可以的php

错误日志供给了一些选项,没有需要自己手工打点ignore_repeated_errors

=

0n

;不记实一再来历的错误ignore_repeated_source

=

On

;忽略错误来历这样的日志文件不会很年夜

查看原帖

php实现的debug log日志操作类实例

本文实例讲述了php实现的debug

log日志操作类。分享给大家供大家参考,具体如下:

?php

class

Tool

{

public

static

function

log($info)

{

$time

=

date('m-d

H:i:s');

$backtrace

=

debug_backtrace();

$backtrace_line

=

array_shift($backtrace);

//

哪一行调用的log方法

$backtrace_call

=

array_shift($backtrace);

//

谁调用的log方法

$file

=

substr($backtrace_line['file'],

strlen($_SERVER['DOCUMENT_ROOT']));

$line

=

$backtrace_line['line'];

$class

=

isset($backtrace_call['class'])

?

$backtrace_call['class']

:

'';

$type

=

isset($backtrace_call['type'])

?

$backtrace_call['type']

:

'';

$func

=

$backtrace_call['function'];

file_put_contents($_SERVER['DOCUMENT_ROOT'].'/debug.log',

"$time

$file:$line

$class$type$func:

$info\n",

FILE_APPEND);

}

}

class

Action

{

public

function

a()

{

$this-b();

}

public

function

b()

{

$this-c();

}

public

function

c()

{

Tool::log('sdfsdf');

}

}

$action

=

new

Action();

$action-a();

这里再补充一个函数:

function

loginfo($format)

{

$args

=

func_get_args();

array_shift($args);

$d

=

debug_backtrace(DEBUG_BACKTRACE_PROVIDE_OBJECT,

1)[0];

$info

=

vsprintf($format,

$args);

$data

=

sprintf("%s

%s,%d:

%s\n",

date("Ymd

His"),

$d["file"],

$d["line"],

$info);

file_put_contents(__DIR__."/log.txt",

$data,

FILE_APPEND);

}

更多关于PHP相关内容感兴趣的读者可查看本站专题:《PHP错误与异常处理方法总结》、《php字符串(string)用法总结》、《PHP数组(Array)操作技巧大全》、《PHP运算与运算符用法总结》、《PHP网络编程技巧总结》、《PHP基本语法入门教程》、《php面向对象程序设计入门教程》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》

希望本文所述对大家PHP程序设计有所帮助。

如何开启PHP日志功能?

在php编程中,对于一些访问没有明显错误提示的php页面,可以通过error_log来做进一步的判定。

但出于种种原因,有些服务器并没有开启PHP的error_log功能。

测试或其它需要时,可以打开一下,方法如下。

编辑php.ini,将log_errors设置为on:

log_errors = On

然后,重启apache即可。

如成功开启,就可以跟踪到对应的错误提示:

[Mon Sep 24 16:57:01 2012] [error] [client 218.5.80.210] PHP Warning: fsockopen() has been disabled for security reasons in /home/bccgi-bin/fsockopen.php on line 2

[Mon Sep 24 16:57:02 2012] [error] [client 218.5.80.210] PHP Warning: fsockopen() has been disabled for security reasons in /home/bccgi-bin/fsockopen.php on line 2

[Mon Sep 24 16:57:03 2012] [error] [client 218.5.80.210] PHP Warning: fsockopen() has been disabled for security reasons in /home/bccgi-bin/fsockopen.php on line 2

[Mon Sep 24 16:57:04 2012] [error] [client 218.5.80.210] PHP Warning: fsockopen() has been disabled for security reasons in /home/bccgi-bin/fsockopen.php on line

另外,注意在Windows环境下,除了将log_errors设置为on外,还需要定义error_log的路径及文件名:

error_log = d:/temp/error.log

(此目录需要授予php标识用户的修改权限,否则日志文件无法生成)

IIS没有error_log的概念,所以需要另外定义。