站长家园(原代码之家)(www.adminjie.com)网站源码,微信源码,游戏源码,商业源码分享平台。
当前位置:网站首页 技术文章 网络编程 正文

php如何比较两个数组是否相等

时间:2022-04-30 [网络编程]作者:fabuyuan 浏览:5 次

比较方法:1、使用“array_diff_assoc($arr1,$arr2)”语句比较两个数组的键名和键值,返回一个差集数组;2、用“差集数组==[]”语句判断差集数组是否为空数组,如果是空数组,则表示进行比较的两个数组相等,反之不相等。

本教程操作环境:windows7系统、PHP7.1版、DELL G3电脑

php中,可以利用数组差集来判断两个数组是否相等。

  • 如果两个数组的差集为空,则这两个数组中没有不同的元素,即两个数组是相等的

  • 如果两个数组的差集不为空,则这两个数组中有不同的元素,即两个数组是不相等的

那么数组差集要怎么获取尼?可以使用array_diff_assoc()函数。

  • array_diff_assoc()用于比较两个(或更多个)数组的键名和键值 ,并返回差集数组。

只有数组键名和键值都相等的两个数组,才相等。

实现步骤:

1、使用array_diff_assoc()获取数组差集

<?php 
header("content-type:text/html;charset=utf-8");
$arr1=array("a"=>"red","b"=>"green","c"=>"blue","d"=>"yellow");
$arr2=array("a"=>"red","b"=>"green","c"=>"blue");
$arr3=array("a"=>"red","b"=>"green","c"=>"blue");
$diff1=array_diff_assoc($arr1,$arr2);
var_dump($diff1);
$diff2=array_diff_assoc($arr2,$arr3);
var_dump($diff2);
?>

通过输出可以看出,$arr1和$arr2有差集,而$arr2和$arr3没有差集

2、判断差集数组是否为空数组

if($diff1==[]){
	echo "两数组相等<br>";
}
else{
	echo "两数组不相等<br>";
}

因为$arr1和$arr2的差集数组不为空数组,因此不相等

if($diff2==[]){
	echo "两数组相等<br>";
}
else{
	echo "两数组不相等<br>";
}

因为$arr2和$arr3为空数组,因此相等。

扩展:将代码封装一下:

<?php 
header("content-type:text/html;charset=utf-8");
function f($arr1,$arr2){
	$diff1=array_diff_assoc($arr1,$arr2);
	if($diff1==[]){
		echo "两数组相等<br>";
	}
	else{
		echo "两数组不相等<br>";
	}
}

$arr1=array("a"=>"red","b"=>"green","c"=>"blue","d"=>"yellow");
$arr2=array("a"=>"red","b"=>"green","c"=>"blue");
$arr3=array("a"=>"red","b"=>"green","c"=>"blue");

f($arr1,$arr2);

f($arr2,$arr3);
?>

推荐学习:《PHP视频教程

以上就是php如何比较两个数组是否相等的详细内容,更多请关注站长家园其它相关文章!

本文标签:  php数组php

转载请注明来源:php如何比较两个数组是否相等

本文永久链接地址:https://www.adminjie.com/post/11834.html

免责声明:
本站所发布的一切资源仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。本站信息来自网络,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容。如果您喜欢该程序,请支持正版软件,购买注册,得到更好的正版服务。

附:
二○○二年一月一日《计算机软件保护条例》第十七条规定:为了学习和研究软件内含的设计思想和原理,通过安装、显示、传输或者存储软件等方式使用软件的,可以不经软件著作权人许可,不向其支付报酬!鉴于此,也希望大家按此说明研究软件!

版权声明:
一、本站致力于为软件爱好者提供国内外软件开发技术和软件共享,着力为用户提供优资资源。
二、本站提供的部分源码下载文件为网络共享资源,请于下载后的24小时内删除。如需体验更多乐趣,还请支持正版。
三、我站提供用户下载的所有内容均转自互联网。如有内容侵犯您的版权或其他利益的,若有侵犯你的权益请:提交版权证明文件到邮箱 2225329873#qq.com(#换为@) 站长会进行审查之后,情况属实的会在三个工作日内为您删除。

  • 站长家园(原代码之家)会员升级
  • 最新文章
    • 带你搞懂Java结构化数据处理开源库SPL

      带你搞懂Java结构化数据处理开源库SPL

      本篇文章给大家带来了关于java的相关知识,其中主要介绍了关于结构化数据处理开源库SPL的相关问题,下面就一起来看一下java下理想的结构化数据处理类库,希望对...

    • 图文详解怎么用Python绘制动态可视化图表

      图文详解怎么用Python绘制动态可视化图表

      本篇文章给大家带来了关于python的相关知识,其中主要介绍了关于绘制动态可视化图标的相关问题,使用Python的Plotly图形库,让你可以毫不费力地生成动画...

    • JavaScript高级语法学习之严格模式

      JavaScript高级语法学习之严格模式

      本篇文章给大家带来了关于javascript的相关知识,其中主要介绍了关于严格模式的相关问题,严格模式很好理解,是一种具有限制性的JavaScript模式,从而...

    • 归纳总结Oracle视图知识点

      归纳总结Oracle视图知识点

      本篇文章给大家带来了关于Oracle的相关知识,其中主要介绍了关于视图的相关问题,视图是一种数据库对象,是从一个或者多个数据表或视图中导出的虚表,下面一起来...

    • jquery中用什么属性

      jquery中用什么属性

      jquery可用的属性有7个:1、“jquery”,可输出jQuery库的版本号;2、“jQuery.fx.interval”,可改变以毫秒计的动画运行速率;3...

    热门文章