【发布时间】:2016-01-24 19:40:43
【问题描述】:
我正在尝试编写一个系统,该系统将查找使用相同 IP 的用户帐户,并使用其密钥打印出匹配项。我已经编写了从 MySQL 中提取数据并很好地放入多维关联数组的部分,因此输入看起来像这样(键是 UserID,值是 IP 地址):
$users = array(
100 => array("1.1.1.1","2.2.2.2","3.3.3.3"),
200 => array("1.1.1.1","4.4.4.4","5.5.5.5"),
300 => array("1.1.1.1","4.4.4.4","7.7.7.7")
);
预期的输出是:
Array
(
[1.1.1.1] => Array
(
[0] => 100
[1] => 200
[2] => 300
)
[4.4.4.4] => Array
(
[0] => 200
[1] => 300
)
)
我已经搜索并使用了多个嵌套 foreach 的反复试验,这些嵌套的 foreach 将循环遍历数组,尝试使用 array_intersect 来查找重复项,但没有什么能让我接近预期的输出。到目前为止,我认为我对问题的思考过度了,解决方案真的很简单,但我似乎无法接近预期的输出。任何帮助表示赞赏,谢谢。
【问题讨论】:
-
我建议使用 MySQL 来代替,结合使用
COUNT和HAVING
标签: php multidimensional-array