检查数组以查找公共数据

时间:2012-09-29 16:42:47

标签: php mysql arrays

  

可能重复:
  Find common values in multiple arrays with PHP

我试图找到两个用户共有的朋友数量。每个用户朋友用户ID都存储在数据库中,如下所示:12,13,14。这是我的代码。

$my_friends = explode(',', $my_friends);
print_r($my_friends);

输出:Array ( [0] => 12 [1] => 13 [2] => 14 )

这些是我的朋友用户ID。现在为下一个用户:

$users_friends = explode(',', $users_friends);
print_r($users_friends);

输出:Array ( [0] => 12 )

如何显示用户1和用户2共有id 12?

3 个答案:

答案 0 :(得分:4)

除了建议您应该规范化数据库之外,这将使得使用简单的SQL查询变得容易:

分解$ myFrieds和$ users_friends数组,然后使用array_intersect()函数查找常用条目,count()那些

答案 1 :(得分:1)

您可以使用array_intersect()

print_r(array_intersect($my_friends, $users_friends));

将输出Array ( [0] => 12 )

答案 2 :(得分:1)

您可以使用array_intersect

$common_friends = array_intersect($my_friends, $users_friends);