首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用preg_match从日志文件中获取IP地址和数据。

问使用preg_match从日志文件中获取IP地址和数据。
EN

Stack Overflow用户
提问于 2014-03-19 19:10:42
回答 1查看 505关注 0票数 1

我有一个日志文件,如file,其中包含用户登录日期:

代码语言:javascript
复制
Date:2014-03-19 21:38:48 IP:127.0.0.1 Request:asdasd URL:127.0.0.1:1990/anti_attack/anti-bruteforce.php?pass=asdasd USERAGENT:Mozilla/5.0 (X11; Ubuntu; Linux i686; rv:11.0) Gecko/20100101 Firefox/11.0

我得到当前IP地址登录的列表:

代码语言:javascript
复制
preg_match("#\b(IP:".$_SERVER['REMOTE_ADDR'].")\b#", $sessions,$sessions1);

结果是:

代码语言:javascript
复制
Array ( [0] => IP:127.0.0.1 [1] => IP:127.0.0.1 ) 

这不是我需要的结果。我需要所有现在发送的请求。例如,如果当前日期是2014-03-19 21:38:48,我需要由当前ip地址发出的所有请求,($_SERVER['REMOTE_ADDR'])发送的2014-03-19 21:38和结果必须如下:

代码语言:javascript
复制
Array ( [0] => Date:2014-03-19 21:38:28 IP:127.0.0.1[1] =>Date:2014-03-19 21:38:40 IP:127.0.0.1 [2] =>Date:2014-03-19 21:38:48 IP:127.0.0.1) 
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-03-19 21:15:00

我用这个:

代码语言:javascript
复制
$sessions=file_get_contents('session.log');
$sessions=explode("\n",$sessions);
foreach($sessions as $tmp)
  if(strpos($tmp,date("Y-m-d H:i")) !== false && strpos($tmp,$_SERVER['REMOTE_ADDR']) !== false)
    $sessions1[]=$tmp;
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22515888

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档