如何判断两个数组相等呢?其实很简单,用 == 或者 === 就可以了

那像 array('k'=>array())这样的多维数组能用如上方法判断相等吗?当然也可以。
若数组是数字索引的,就要注意一下了,见代码:

1 <?php
2     $a = array("apple", "banana");
3     $b = array(1 => "banana", "0" => "apple");
4
5     var_dump($a == $b); // bool(true)
6     var_dump($a === $b); // bool(false)
7 ?>

除了==这种数组操作符之外,还有其他比较绕的方法来判断。比如说,利用array_diff($a, $b)来比较两个数组的差集,如果差集是空数组的话就相等了。
然后再说一下 数组的 + 加号运算符。+ 和 array_merge的区别在遇到相等key时,用+时,左边数组会覆盖掉右边数组的值,array_merge相反,后面的数组覆盖掉前面的。

 1 <?php
 2     $a = array("a" => "apple", "b" => "banana");
 3     $b = array("a" => "pear", "b" => "strawberry", "c" => "cherry");
 4
 5     $c = $a + $b; // Union of $a and $b
 6     echo "Union of \$a and \$b: \n";
 7     var_dump($c);
 8
 9     $c = array_merge($a, $b); // Union of $b and $a
10     echo "array_merge of \$b and \$a: \n";
11     var_dump($c);
12 ?>

执行后输出:

Union of $a and $b:
array(3) {["a"]=>string(5) "apple"["b"]=>string(6) "banana"["c"]=>string(6) "cherry"
}
array_merge of $b and $a:
array(3) {["a"]=>string(4) "pear"["b"]=>string(10) "strawberry"["c"]=>string(6) "cherry"
}

转载于:https://www.cnblogs.com/cuculus/p/9293519.html

php 判断两个数组是否相等相关推荐

  1. 编写程序判断两个数组是否相等,然后编写一段类似的程序比较两个 vector。

    /*编写程序判断两个数组是否相等,然后编写一段类似的程 序比较两个 vector.*/ /* bool judge1(size_t* a, size_t* b, int n) {     for (s ...

  2. 二维数组:随机生产,遍历,判断两个数组一维二维长度,和内容是否一致

    import java.util.Random;/*** 1,定义第一个方法,传入数组长度,返回一个1维和2维长度都完全相同的数组* 2.定义一个方法,传入两个数二维组,判断两个数组是否完全一致:一维 ...

  3. 判断两个数组中是否存在相同的数字

    判断两个数组中是否存在相同的数字 给定两个排好序的数组,怎样高效得判断这两个数组中存在相同的数字? 这个问题首先想到的是一个O(nlogn)的算法.就是任意挑选一个数组,遍历这个数组的所有元素,遍历过 ...

  4. 判断两个数组有相同的数据

    判断两个数组是否含有重复数据,比如说 [1,3,5,7],和 [1,2,3,5,8,9] 有 1,3,5三个值是相同的,那么得到的应该是true let arr1 = [1,2,3,5,8,9] le ...

  5. C语言——判断两个数组中是否有相同的元素

    题目:判断两个数组中是否有相同的元素,有就输出"有",没有就输出"没有". 解法一:用第一个数组中的所有元素与第二个数组中的所有元素相比较,若有相同元素,则停止 ...

  6. js中判断两个数组是否相等

    js中判断两个数组是否相等的方法 1. 将两个数组转成字符串比较,但是发现他们只是顺序不相等也被当做不相等 [1,2,3].toString()== [3,2,1].toString() ----fa ...

  7. javascript判断两个数组是否相等

    首先: javascript 是不能用 == 和 === 判断两个数组是否相等的! let a = [1,2,3,4,5]; let b = [1,2,3,4,5]; console.log(a == ...

  8. 判断两个数组相同位置值是否相同

    有两个整数型数组,长度相同,输入数组各项,完成输入后,判断两个数组的每个数组位置的值是否相同,如果都相同,则输出true,反之则输出false. @Testpublic void test19(){i ...

  9. C语言判断两个数组是否有相同元素

    先定义两个数组arr1和arr2,分别从第一个元素遍历到最后一个元素,判断有相同元素就输出. #include <stdio.h> int main() {int i = 0,j = 0; ...

最新文章

  1. C++类构造函数初始化列表
  2. CSS 定位之绝对与相对
  3. Linux下C语言执行过程(预处理,编译,汇编,链接,执行)
  4. .NET跨平台实践:用C#开发Linux守护进程
  5. 一对一聊天ajax实现
  6. WORD各个章节批量另起一页?
  7. bzoj1031 [JSOI2007]字符加密 后缀数组改
  8. 【重定向 return “redirect:/***“的作用 】
  9. 最小的html5页面,第一个html5+响应式页面
  10. 大道至简第二篇阅读笔记
  11. 转载:如果你到了20岁,还没到 25岁 作者:李开复
  12. SSCI写作--期刊检索和基本介绍
  13. 2022年【CSDN毎周小结】
  14. keepalved(DR模式群集冗余备份)
  15. 电感的饱和电流 均方值电流 额定电流的认识
  16. 菜鸟阿鑫对于一堆数组的总结以及理解
  17. 电脑重装系统之后MySQl如何恢复
  18. mac 下 Parallels Desktop 克隆虚拟机 product_uuid 相同
  19. 【python做接口测试的学习记录day9——pytest自动化测试框架之yaml数据驱动封装】
  20. [Python]经典例题——解一元二次方程

热门文章

  1. SQL 创建随机时间的函数
  2. Ubuntu ssh 登陆问题
  3. 管理Shader——Shader概览
  4. Web.config文件中的location元素
  5. Java操作MySQL的中文处理方法
  6. 余世维《职业经理人常犯的错误》[文字版]
  7. Linux内存管理之红黑树(五)
  8. linux 例行性工作,鳥哥的 Linux 私房菜
  9. 怎么把geany变成英文_细数Word中英文排版6大坑,我不相信你一个也没有遇到过...
  10. linux报文高速捕获技术对比--napi/libpcap/afpacket/pfring/dpdk/xdp