【杂谈】怎样比较两个PHP多维数组
2019-11-18杂谈搜奇网23°c
A+ A-下面我们就连系细致的代码示例,给人人引见比较两个二维数组的要领。
代码示例以下:
<?php //多维数组比较 $color1 = array(array('Red',80),array('Green',70),array('white',60)); $color2 = array(array('Green',70),array('Black',95)); $color = array_udiff($color1,$color2,create_function( '$a,$b','return strcmp(implode("",$a),implode("",$b));') ); echo "<pre>"; print_r($color);
此段代码中,我们就能够得出$color1数组相对于$color2数组有哪些差别的数组元素。
输出比较效果以下:
函数引见:
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; 假如 str1 大于 str2 返回 > 0;假如二者相称,返回 0。
4、implode:将一个一维数组的值转化为字符串
本篇文章就是关于比较两个PHP多维数组的要领引见,也很简单易懂,愿望对须要的朋侪有所协助!
以上就是怎样比较两个PHP多维数组的细致内容,更多请关注ki4网别的相干文章!