php中判断数组相等的方法以及数组运算符介绍


Posted in PHP onMarch 30, 2015

如何判断两个数组相等呢?其实很简单,用 == 或者 === 就可以了
php手册里说明如下:

php中判断数组相等的方法以及数组运算符介绍

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

<?php

$a = array("apple", "banana");

$b = array(1 => "banana", "0" => "apple");
var_dump($a == $b); // bool(true)

var_dump($a === $b); // bool(false)

?>

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

<?php

$a = array("a" => "apple", "b" => "banana");

$b = array("a" => "pear", "b" => "strawberry", "c" => "cherry");
$c = $a + $b; // Union of $a and $b

echo "Union of \$a and \$b: \n";

var_dump($c);
$c = array_merge($a, $b); // Union of $b and $a

echo "array_merge of \$b and \$a: \n";

var_dump($c);

?>

执行后输出:

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"

}
PHP 相关文章推荐
使用PHP模拟HTTP认证
Oct 09 PHP
桌面中心(三)修改数据库
Oct 09 PHP
CI框架装载器Loader.php源码分析
Nov 04 PHP
ThinkPHP中使用Ueditor富文本编辑器
Sep 02 PHP
php实现图片上传、剪切功能
May 07 PHP
php 5.4 全新的代码复用Trait详解
Jan 05 PHP
Yii2中简单的场景使用介绍
Jun 02 PHP
php使用flock阻塞写入文件和非阻塞写入文件的实例讲解
Jul 10 PHP
PHP中localeconv()函数的用法
Mar 26 PHP
php数组遍历类与用法示例
May 24 PHP
laravel批量生成假数据的方法
Oct 09 PHP
Laravel 微信小程序后端搭建步骤详解
Nov 26 PHP
smarty模板引擎之分配数据类型
Mar 30 #PHP
php生成不重复随机数、数组的4种方法分享
Mar 30 #PHP
smarty模板引擎基础知识入门
Mar 30 #PHP
php array_merge函数使用需要注意的一个问题
Mar 30 #PHP
PHP CodeIgniter框架的工作原理研究
Mar 30 #PHP
PHP实现动态柱状图改进版
Mar 30 #PHP
PHP动态柱状图实现方法
Mar 30 #PHP
You might like
通过ICQ网关发送手机短信的PHP源程序
2006/10/09 PHP
用PHP伪造referer突破网盘禁止外连的代码
2008/06/15 PHP
php中通过虚代理实现延迟加载的实现代码
2011/06/10 PHP
PHP中执行cmd命令的方法
2014/10/11 PHP
php字符比较函数similar_text、strnatcmp与strcasecmp用法分析
2014/11/18 PHP
PHP使用Mysqli类库实现完美分页效果的方法
2016/04/07 PHP
PHP addcslashes()函数讲解
2019/02/03 PHP
禁止直接访问php文件代码分享
2020/05/05 PHP
Jquery判断$(&quot;#id&quot;)获取的对象是否存在的方法
2013/09/25 Javascript
js 一个关于图片onload加载的事
2013/11/10 Javascript
JS中如何设置readOnly的值
2013/12/25 Javascript
JS不能跨域借助jquery获取IP地址的方法
2014/08/20 Javascript
AngularJS实现分页显示数据库信息
2016/07/01 Javascript
Angular2从搭建环境到开发步骤详解
2016/10/17 Javascript
浅谈bootstrap使用中的一些问题以及解决过程
2016/10/18 Javascript
JS实现的简单下拉框联动功能示例
2018/05/11 Javascript
微信运维交互机器人的示例代码
2018/11/12 Javascript
如何在Vue中使用CleaveJS格式化你的输入内容
2018/12/14 Javascript
javascript+css实现进度条效果
2020/03/25 Javascript
Python爬虫框架Scrapy实战之批量抓取招聘信息
2015/08/07 Python
实例讲解Python中SocketServer模块处理网络请求的用法
2016/06/28 Python
python制作websocket服务器实例分享
2016/11/20 Python
Python绘制3D图形
2018/05/03 Python
python3的url编码和解码,自定义gbk、utf-8的例子
2019/08/22 Python
python将logging模块封装成单独模块并实现动态切换Level方式
2020/05/12 Python
Django 实现 Websocket 广播、点对点发送消息的代码
2020/06/03 Python
css3实现的多级渐变下拉菜单导航效果代码
2015/08/31 HTML / CSS
HTML5 本地存储之如果没有数据库究竟会怎样
2013/04/25 HTML / CSS
纽约著名的服装辅料来源:M&J Trimming
2017/07/26 全球购物
味多美官网:蛋糕订购,100%使用天然奶油
2017/11/10 全球购物
《哪吒闹海》教学反思
2014/02/28 职场文书
医学生就业推荐表自我鉴定
2014/03/26 职场文书
《会走路的树》教后反思
2014/04/19 职场文书
回门宴新娘答谢词
2015/09/29 职场文书
如何书写先进事迹材料?
2019/07/02 职场文书
python 单机五子棋对战游戏
2022/04/28 Python