求两组数据的交集,帮忙!

jxyuhua 2003-10-08 11:51:53
一个查询模块,查询到了两组数据(或更多组)如下:
A:
ibm
canon
microsfot
dell
sun

B:
ibm
sun
linux
hp

现在想求出这两组数据的交集,即ibm,sun,然后把它们显示出来
有什么好的方法呢,速度快一点的,
我想先把它们插入到数据表中再用sql语句取出交集,但觉得那样比较慢(因为有很多数据,而且要频繁地查询),不知道用数组行不行,
各位有什么解决方法没有?
...全文
125 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
feel8 2003-10-08
  • 打赏
  • 举报
回复
array_intersect
(PHP 4 >= 4.0.1)

array_intersect -- 计算数组的交集
说明
array array_intersect ( array array1, array array2 [, array ...])


array_intersect() 返回一个数组,该数组包含了所有在 array1 中也同时出现在所有其它参数数组中的值。注意键名保留不变。

例子 1. array_intersect() 例子

<?PHP
$array1 = array ("a" => "green", "red", "blue");
$array2 = array ("b" => "green", "yellow", "red");
$result = array_intersect ($array1, $array2);
?>


这使得 $result 成为: Array
(
[a] => green
[0] => red
)





注: 两个单元仅在 (string) $elem1 === (string) $elem2 时被认为是相同的。也就是说,当字符串的表达是一样的时候。

xuzuning 2003-10-08
  • 打赏
  • 举报
回复
<?php
$a = array(ibm,canon,microsfot,dell,sun);
$b = array(ibm,sun,linux,hp);
$c = array_intersect($a,$b);
print_r($c);
?>
输出
Array ( [0] => ibm [4] => sun )
jxyuhua 2003-10-08
  • 打赏
  • 举报
回复
多谢两位的帮忙,我又学了一招。

21,886

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧