php判断一个数组是否为另一个数组子集的方法
时间:2021-07-01 10:21:17
帮助过:6人阅读
- // 快速的判断$a数组是否是$b数组的子集
- $a = array(135,138);
- $b = array(135,138,137);
实现方法:
方法1,for循环遍历
- $flag = 1;
- foreach ($a as $va) {
- if (in_array($va, $b)) {
- continue;
- }else {
- $flag = 0;
- break;
- }
- }
-
- if ($flag) {
- echo "Yes";
- }else {
- echo "No";
- }
方法2,array_diff的使用

代码:
- $c = array_diff($a, $b);
- print_r($c);
- $flag = empty($c)?1 : 0;
-
- if ($flag) {
- echo "Yes";
- }else {
- echo "No";
- }
方法3,array_intersect的使用

例子:
- if ($a == array_intersect($a, $b)) {
- $flag = 1;
- }else {
- $flag = 0;
- }
-
- if ($flag) {
- echo "Yes";
- }else {
- echo "No";
- }
|