登录  /  注册

如何比较两个PHP多维数组

藏色散人
发布: 2019-01-16 15:28:50
原创
14727人浏览过

判断两个多维数组是否相等,或有哪些元素区别。我们可以通过PHP中array_udiff()函数和create_function()方法、strcmp ()等函数来实现比较。

如何比较两个PHP多维数组

下面我们就结合具体的代码示例,给大家介绍比较两个二维数组的方法。

代码示例如下:

<?php

//多维数组比较
$color1 = array(array(&#39;Red&#39;,80),array(&#39;Green&#39;,70),array(&#39;white&#39;,60));
$color2 = array(array(&#39;Green&#39;,70),array(&#39;Black&#39;,95));

$color = array_udiff($color1,$color2,create_function(
&#39;$a,$b&#39;,&#39;return strcmp(implode("",$a),implode("",$b));&#39;)
);

echo "<pre class="brush:php;toolbar:false">";

print_r($color);
登录后复制

此段代码中,我们就可以得出$color1数组相对于$color2数组有哪些不同的数组元素。

输出比较结果如下:

ff44dfd3ad9a71ec1976a4de9a645c9.png

函数介绍:

1、array_udiff : 用回调函数比较数据来计算数组的差集

array_udiff ( array $array1 , array $array2 [, array $... ], callable $value_compare_func ) : array
登录后复制

使用回调函数比较数据,计算数组的不同之处。和 array_diff() 不同的是,前者使用内置函数进行数据比较。

参数array1表示第一个数组。array2第二个数组。value_compare_func回调对照函数。

在第一个参数小于,等于或大于第二个参数时,该比较函数必须相应地返回一个小于,等于或大于 0 的整数。

callback ( mixed $a, mixed $b ) : int

返回值,返回 array1 里没有出现在其他参数里的所有值。

2、create_function:创建一个匿名函数

create_function ( string $args , string $code ): string
登录后复制

根据传递的参数创建匿名函数,并为其返回唯一名称。

通常这些参数将作为单引号分隔的字符串传递。使用单引号字符串的原因是为了保护变量名称不被解析,否则,如果使用双引号,则需要转义变量名称,例如\ $ avar。

args表示函数参数。code表示功能代码。

返回值是以字符串或FALSE错误形式返回唯一函数名称。

3、strcmp :二进制安全字符串比较

strcmp ( string $str1 , string $str2 ) : int
登录后复制

注意该比较区分大小写。

参数str1表示第一个字符串。str2表示第二个字符串。

返回值是如果 str1 小于 str2 返回 0;如果两者相等,返回 0。

4、implode:将一个一维数组的值转化为字符串

本篇文章就是关于比较两个PHP多维数组的方法介绍,也很简单易懂,希望对需要的朋友有所帮助!

以上就是如何比较两个PHP多维数组的详细内容,更多请关注php中文网其它相关文章!

智能AI问答
PHP中文网智能助手能迅速回答你的编程问题,提供实时的代码和解决方案,帮助你解决各种难题。不仅如此,它还能提供编程资源和学习指导,帮助你快速提升编程技能。无论你是初学者还是专业人士,AI智能助手都能成为你的可靠助手,助力你在编程领域取得更大的成就。
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
最新问题
关于CSS思维导图的课件在哪? 课件
凡人来自于2024-04-16 10:10:18
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2024 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号