首页 >后端开发 >php教程 >php判断一个数组是否为另一个数组子集的方法

php判断一个数组是否为另一个数组子集的方法

WBOY
WBOY原创
2016-07-25 08:55:311687浏览
  1. // 快速的判断$a数组是否是$b数组的子集
  2. $a = array(135,138);
  3. $b = array(135,138,137);
复制代码

实现方法: 方法1,for循环遍历

  1. $flag = 1;
  2. foreach ($a as $va) {
  3. if (in_array($va, $b)) {
  4. continue;
  5. }else {
  6. $flag = 0;
  7. break;
  8. }
  9. }
  10. if ($flag) {
  11. echo "Yes";
  12. }else {
  13. echo "No";
  14. }
复制代码

方法2,array_diff的使用 array_diff

代码:

  1. $c = array_diff($a, $b);
  2. print_r($c);
  3. $flag = empty($c)?1 : 0;
  4. if ($flag) {
  5. echo "Yes";
  6. }else {
  7. echo "No";
  8. }
复制代码

方法3,array_intersect的使用 array_intersect

例子:

  1. if ($a == array_intersect($a, $b)) {
  2. $flag = 1;
  3. }else {
  4. $flag = 0;
  5. }
  6. if ($flag) {
  7. echo "Yes";
  8. }else {
  9. echo "No";
  10. }
复制代码


声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn