欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

php程序重要是正则协助 很急很

程序员文章站 2022-06-09 19:59:09
...
php程序主要是正则协助 很急很急
文件log.txt:
220.172.12.141 [17/Feb/2011:06:05:52 +0800] "GET /lift.sina.com.cn/tuan.html"
220.172.12.142 [17/Feb/2011:06:05:54 +0800] "GET /lift.sina.com.cn/ent.html"
220.172.12.143 [17/Feb/2011:06:05:55 +0800] "GET /lift.sina.com.cn/tuan.html"
220.172.12.144 [17/Feb/2011:08:05:56 +0800] "GET lift.sina.com.cn/sports.html"
220.172.12.145 [17/Feb/2011:10:05:56 +0800] "GET lift.sina.com.cn/news.html"
220.172.12.145 [17/Feb/2011:11:05:57 +0800] "GET lift.sina.com.cn/tuan.html"

.
要求用php程序统计出各小时/lift.sina.com.cn/tuan.html 的页面访问次数

$hours = array();
$handle = fopen('log.txt','r+');
if ($handle){
while (!feof($handle)){
$line = fgets($handle,4096);
preg_match('/\d*\.\d*\.\d*\.\d* \[.*:(.*):.*:.* \+0800\] .*"GET\s\/lift\.sina\.com\.cn\/tuan\.html"/', $line,$result);
if (isset($result[1])){
$hours[$result[1]]++;
}
}
}
var_dump($hours);
我是用一个正则分组去做,为什么匹配不出时间
很急 很急

------解决方案--------------------
你那个也是对的,只是你忽略了
220.172.12.145 [17/Feb/2011:11:05:57 +0800] "GET lift.sina.com.cn/tuan.html"
中的是
GET lift.sina.com.cn/tuan.html
而不是
GET /lift.sina.com.cn/tuan.html

------解决方案--------------------
$handle = fopen('log.txt','r+');
echo $handle ; //看看读出来对不对
------解决方案--------------------
不存在你说的现象
php程序重要是正则协助 很急很

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。

相关文章

相关视频


网友评论

文明上网理性发言,请遵守 新闻评论服务协议

我要评论
  • php程序重要是正则协助 很急很
  • 专题推荐