首页 > 编程知识 正文

php行为日志(php 日志记录)

时间:2023-12-24 12:05:26 阅读:320304 作者:DONN

本文目录一览:

thinkphp 记录管理员行为日志,思路是怎么啊啊?

写一个方法,把数据库字段,行为方法存到数组里边,然后赋在每个控制器的每个方法下面,把控制器加方法转换成字符串! 比如你加在login/index里边就转化成登陆字样,然后add到数据库,循环到你的日志上

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

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

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

比如:

?php

function writeLog($msg){

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

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

file_put_contents($logFile,$msg,FILE_APPEND );

}

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

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

?

php实现日志管理(记录用户操作)原理

把日志需要保留的数据用json串或xml等数据结构的方式存储起来,调用的时候直接解析这些数据结构即可。

按简单的理解,给各模块的关键步骤起个操作名字,记录一下该操作名,时间,用户,IP等就完了。

单入口模式,这样只需要往index.php加入write_log功能就好了。

至于哪个字段,原值,新值,这个没什么好方法啊,可以引入插件机制,

开个类存储插件方法,命名以module_task为准,比如以上的url就是article_update

那么这个插件类就是

class plugin

{

public $extraLog;

function article_update($field,$old,$new)

{

self::$extraLog = array('字段'=$field,'原值'=$old,'新值'=$new);

}

}

这个方法在流程页面进行数据库操作的地方调用,index.php的write_log流程只读plubin::$extraLog,循环然后和其它信息一起入库或文件。

php日志类??

首先,你得有一个“日志类”,明显PHP并没有内置,所以你需要自己编写这个类。

日志模块的大概设计思路如下:

1、你得有一个数据表,记录所有的用户行为。

2、你得写一个“日志类”,这个类至少有一个方法:向数据表写入日志信息

那日志信息从哪里来呢?

在你想记录日志的地方,调用日志类的方法来触发写入动作。

比如(伪代码):

if (用户登录成功){

 $日志类 = new 日志类();

 $日志类-插入数据( "登录日志", "登录成功", "username=a;password=b", "IP" ... )

}

如果你想做日志的查询功能,显然你要给日志类加更多方法..

如何开启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的概念,所以需要另外定义。

thinkphp的记录用户行为的日志怎么实现?

ThinkLog::record('测试日志信息');

如果为了后期方便程序解析的话可以用特定的格式记录

如:ThinkLog::write($user.'审核图片'.$photo.":"."不通过",'WARN');即用户审核图片结果是不通过

用户行为分析,是指在获得网站访问量基本数据的情况下,对有关数据进行统计、分析,从中发现用户访问网站的规律,并将这些规律与网络营销策略等相结合,从而发现目前网络营销活动中可能存在的问题,并为进一步修正或重新制定网络营销策略提供依据。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。