【发布时间】:2014-11-27 16:11:55
【问题描述】:
我有一个 MySQL 表,我在其中存储所有网站页面加载,如下所示:
[IP] [日期] [主机名]
主要查询类似于
$log = mysqli_query($con, "SELECT * FROM log");
然后我将所有的值放入一个数组中:
while ($result = mysqli_fetch_assoc($log)) {
$log_array[] = $result;
}
所以现在我有一个名为 $log_array 的 PHP 数组,带有 aprox。 20K 行。
显然有重复的IP条目。
示例:
Array
(
[0] => Array
(
[ip] => 12.34.56.78
[date] => 2014-11-25 22:03:01
[host] => fakehost1
)
[1] => Array
(
[ip] => 12.34.56.78
[date] => 2014-11-25 22:03:01
[host] => fakehost1
)
[2] => Array
(
[ip] => 98.76.54.32
[date] => 2014-11-25 22:03:03
[host] => fakehost2
)
[3] => Array
(
[ip] => 12.34.56.78
[date] => 2014-11-25 22:03:05
[host] => fakehost3
)
[4] => Array
(
[ip] => 98.76.54.32
[date] => 2014-11-25 22:03:06
[host] => fakehost2
)
)
我想获得一个具有唯一 IP 地址和最后日期和最后主机的数组,并计算重复的 IP,所以我想获得这样的东西:
Array
(
[0] => Array
(
[ip] => 12.34.56.78
[times] => 3
[lastdate] => 2014-11-25 22:03:05
[lasthost] => fakehost3
)
[1] => Array
(
[ip] => 98.76.54.32
[times] => 2
[lastdate] => 2014-11-25 22:03:06
[lasthost] => fakehost2
)
)
几周来我一直在尝试解决这个问题,到处阅读并学习 php 数组函数,但我不知道该怎么做。
提前致谢!
【问题讨论】:
-
表中是否也有记录ID?还是只有这 3 个字段?
-
我还有一个自动递增的“id”字段。
标签: php mysql arrays multidimensional-array