PHP实现对数组简单求交集,差集,并集功能示例

这篇文章主要介绍了PHP实现对数组简单求交集,差集,并集功能,涉及php数组操作函数array_diff、array_intersect及array_merge的使用技巧,需要的朋友可以参考下

本文实例讲述了PHP实现对数组简单求交集,差集,并集功能,分享给大家供大家参考,具体如下:

  1. <?php
  2. $arr1 = array(
  3. '0' => 'zero',
  4. '1' => 'one',
  5. '2' => 'two',
  6. '3' => 'three'
  7. );
  8. $arr2 = array(
  9. '2' => 'two',
  10. 'three' => 'three',
  11. '4' => 'four',
  12. '5' => 'five'
  13. );
  14. //差集【对比返回在 arr1 中但是不在 arr2 及任何其它参数数组中的值。】
  15. $array_diff = array_diff($arr1,$arr2);
  16. echo "<pre>"; print_r($array_diff);
  17. /* 输出结果
  18. *Array
  19. *(
  20. * [0] => zero
  21. * [1] => one
  22. *)
  23. */
  24. //交集【对比返回既在 arr1 中也在 arr2 数组中的值。】
  25. # 注意事项: 键值保留arr1数组中的键值不变
  26. $array_intersect = array_intersect($arr1,$arr2);
  27. echo "<pre>"; print_r($array_intersect);
  28. /* 输出结果
  29. *Array
  30. *(
  31. * [2] => two
  32. * [3] => three
  33. *)
  34. */
  35. //并集【将arr1数组中的值附加在arr2数组的后面。返回作为结果的数组。 】
  36. #注意事项:【如果输入的数组中有相同的字符串键名,则该键名后面的值将覆盖前一个值。
  37. #然而,如果数组包含数字键名,后面的值将不会覆盖原来的值,而是附加到后面。】
  38. $array_merge = array_merge($arr1,$arr2);
  39. echo "<pre>"; print_r($array_merge);
  40. /* 输出结果
  41. * Array
  42. * (
  43. * [0] => zero
  44. * [1] => one
  45. * [2] => two
  46. * [3] => three
  47. * [4] => two
  48. * [three] => three
  49. * [5] => four
  50. * [6] => five
  51. * )
  52. */
  53. ?>