这篇文章主要介绍了PHP实现对数组简单求交集,差集,并集功能,涉及php数组操作函数array_diff、array_intersect及array_merge的使用技巧,需要的朋友可以参考下
本文实例讲述了PHP实现对数组简单求交集,差集,并集功能。分享给大家供大家参考,具体如下:
<?php
$arr1 = array(
'0' => 'zero',
'1' => 'one',
'2' => 'two',
'3' => 'three'
);
$arr2 = array(
'2' => 'two',
'three' => 'three',
'4' => 'four',
'5' => 'five'
);
//差集【对比返回在 arr1 中但是不在 arr2 及任何其它参数数组中的值。】
$array_diff = array_diff($arr1,$arr2);
echo "<pre>"; print_r($array_diff);
/* 输出结果
*Array
*(
* [0] => zero
* [1] => one
*)
*/
//交集【对比返回既在 arr1 中也在 arr2 数组中的值。】
# 注意事项: 键值保留arr1数组中的键值不变
$array_intersect = array_intersect($arr1,$arr2);
echo "<pre>"; print_r($array_intersect);
/* 输出结果
*Array
*(
* [2] => two
* [3] => three
*)
*/
//并集【将arr1数组中的值附加在arr2数组的后面。返回作为结果的数组。 】
#注意事项:【如果输入的数组中有相同的字符串键名,则该键名后面的值将覆盖前一个值。
#然而,如果数组包含数字键名,后面的值将不会覆盖原来的值,而是附加到后面。】
$array_merge = array_merge($arr1,$arr2);
echo "<pre>"; print_r($array_merge);
/* 输出结果
* Array
* (
* [0] => zero
* [1] => one
* [2] => two
* [3] => three
* [4] => two
* [three] => three
* [5] => four
* [6] => five
* )
*/
?>
运行结果: