很多站长朋友们都不太清楚php读取log文件,今天小编就来给大家整理php读取log文件,希望对各位有所帮助,具体内容如下:
本文目录一览: 1、 怎样用php读取mysql.log的内容 2、 thinkphp5 runtime\log怎么读取,是用来存储什么的 3、 如何用php抓取windows下“事件查看器中的log”?谢谢! 4、 php怎么把字符串写入log文件 5、 PHP正则怎么解析log文件 怎样用php读取mysql.log的内容$content=file_get_contents('mysql.log');
var_dump($content);
这样就能显示content内容。
thinkphp5 runtime\log怎么读取,是用来存储什么的log当然是存日志的。
定时任务是一种方法。
但其实这个并不需要那么准确的时间,可以通过网页访问来判断上次清除的时间。
在缓存中保留一个清除log的时间,每次打开网页的时候判断一下这个时间是否大于一天或一周...,是的话就清除一周前的log。
如何用php抓取windows下“事件查看器中的log”?谢谢!windows的log文件一般存放在C:\WINDOWS\System32\Config\下,后缀为.evt,记事本打开会乱码,直接读写应该没有问题,但是乱码的问题怎么解决我不太清楚.
下面是在网上找到的, 大概意思是调用windows api, 我没试过,所以发原文你自己理解吧.
在注册表中的位置,在HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Eventlog\<Category>::File中记录。
Category为Application,Security和System。如果计算机是域控制器,事件日志还包括目录服务和DNS服务的相关部分。
在程序中读取Event Log,可以使用标准Windows API函数实现。在
MSDN Library/Platform SDK/Base Services/Denugging and Error Handlings/Event Logging中可以查到详尽的信息。
使用API函数ReadEventLog()
Platform SDK: Debugging and Error Handling
ReadEventLog
The ReadEventLog function reads a whole number of entries from the specified event log. The function can be used to read log entries in chronological or reverse chronological order.
BOOL ReadEventLog(
HANDLE hEventLog, // handle to event log
DWORD dwReadFlags, // how to read log
DWORD dwRecordOffset, // offset of first record
LPVOID lpBuffer, // buffer for read data
DWORD nNumberOfBytesToRead, // bytes to read
DWORD *pnBytesRead, // number of bytes read
DWORD *pnMinNumberOfBytesNeeded // bytes required
);
Parameters
hEventLog
[in] Handle to the event log to read. This handle is returned by the OpenEventLog function.
dwReadFlags
[in] Specifies how the read operation is to proceed. This parameter must include one of the following values. Value Meaning
EVENTLOG_SEEK_READ The read operation proceeds from the record specified by the dwRecordOffset parameter.
This flag cannot be used with EVENTLOG_SEQUENTIAL_READ.
EVENTLOG_SEQUENTIAL_READ The read operation proceeds sequentially from the last call to the ReadEventLog function using this handle.
This flag cannot be used with EVENTLOG_SEEK_READ.
If the buffer is large enough, more than one record can be read at the specified seek position; you must specify one of the following flags to indicate the direction for successive read operations. Value Meaning
EVENTLOG_FORWARDS_READ The log is read in chronological order.
This flag cannot be used with EVENTLOG_BACKWARDS_READ.
EVENTLOG_BACKWARDS_READ The log is read in reverse chronological order.
This flag cannot be used with EVENTLOG_FORWARDS_READ.
dwRecordOffset
[in] Specifies the log-entry record number at which the read operation should start. This parameter is ignored unless dwReadFlags includes the EVENTLOG_SEEK_READ flag.
lpBuffer
[out] Pointer to a buffer for the data read from the event log. This parameter cannot be NULL, even if the nNumberOfBytesToRead parameter is zero.
The buffer will be filled with an EVENTLOGRECORD structure.
nNumberOfBytesToRead
[in] Specifies the size, in bytes, of the buffer. This function will read as many whole log entries as will fit in the buffer; the function will not return partial entries, even if there is room in the buffer.
pnBytesRead
[out] Pointer to a variable that receives the number of bytes read by the function.
pnMinNumberOfBytesNeeded
[out] Pointer to a variable that receives the number of bytes required for the next log entry. This count is valid only if ReadEventLog returns zero and GetLastError returns ERROR_INSUFFICIENT_BUFFER.
Return Values
If the function succeeds, the return value is nonzero.
If the function fails, the return value is zero. To get extended error information, call GetLastError.
Remarks
When this function returns successfully, the read position in the error log is adjusted by the number of records read. Only a whole number of event log records will be returned.
Note The configured filename for this source may also be the configured filename for other sources (several sources can exist as subkeys under a single logfile). Therefore, this function may return events that were logged by more than one source.
For example, see Reading the Event Log.
Requirements
Windows NT/2000 or later: Requires Windows NT 3.1 or later.
Windows 95/98/Me: Unsupported.
Header: Declared in Winbase.h; include Windows.h.
Library: Use Advapi32.lib.
Unicode: Implemented as Unicode and ANSI versions on Windows NT/2000.
See Also
Event Logging Overview, Event Logging Functions, ClearEventLog, CloseEventLog, EVENTLOGRECORD, OpenEventLog, ReportEvent
Platform SDK Release: February 2001 Contact Platform SDK Order a Platform SDK CD Online
Requirements
Windows NT/2000 or later: Requires Windows NT 3.1 or later.
Windows 95/98/Me: Unsupported.
Header: Declared in Winbase.h; include Windows.h.
Library: Use Advapi32.lib.
Unicode: Implemented as Unicode and ANSI versions on Windows NT/2000.
See Also
Event Logging Overview, Event Logging Functions, ClearEventLog, CloseEventLog, EVENTLOGRECORD, OpenEventLog, ReportEvent
php怎么把字符串写入log文件<?php
//log日志文件
$txt = './log.txt';
//要写入的内容
$addLogStr = date('Y-m-d H:i:s')."操作了xxx成功OR失败!\r\n";
//打开资源并将光标设置为末尾
$fp = fopen($txt,"a+");
//写入内容
fwrite($fp,$addLogStr);
//关闭资源
fclose($fp);
PHP正则怎么解析log文件<?php$file = fopen("zmxc.access_20120516.log","r");set_time_limit(0);$link = mysql_connect(*) or die('222');//自己的数据库信息mysql_select_db('test',$link) or die('111');mysql_query ('set names utf8');$i =0;while($count = fgets($file)){ $array = explode(' HTTP/1.1 ',$count); $string = $array[0]; $que=substr($array[1],0,3); if($que == '200'){ $i++ ; $arr = explode(' +0800] ',$string); $ips = explode(' - - [',$arr[0]); $t2 =substr(strstr($ips[1],':'),1); $t1 = explode(':',$ips[1]); $times = $t1[0].' '.$t2; $time=strtotime(strtr($times,'/',' ')); $ip = $ips[0]; $src = $arr[1]; if(strstr($src,'id=')){ $ids = explode('id=',$src); $id =$ids[1]; } mysql_query("INSERT INTO `logs_16` (`t_id`,`src`,`ip`,`intip`,`time`) VALUES ('$id','$src','$ip', inet_aton('$ip'),'$time')"); unset($id); }}echo $i;fclose($fp); ?>
关于php读取log文件的介绍到此就结束了,不知道本篇文章是否对您有帮助呢?如果你还想了解更多此类信息,记得收藏关注本站,我们会不定期更新哦。
查看更多关于php读取log文件 php读取excel文件的详细内容...