欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

PHP中的array_diff_assoc与array_diff函数实例比较

程序员文章站 2022-04-09 17:18:31
...
之前说了array_diff,这次是它的升级版本,php数组差异性比较array_diff_assoc函数,用来比较不同数组中的key 和value的差异并按照索引数组输出。

使用语法跟array_diff一样

$newarray = array_diff_assoc($array1,$array2.....);

要注意的也一样:array_diff_assoc 不能递归对比,只能是一维数组,如果数组嵌套数组,则将后面的数组按"数组"比较,就算不同的数组也会相同。

不一样的而是,这次的比较多了key值,即索引值,如果索引不同,也要返回到数组中。

举例:

1.有索引的比较

<?php
$array = array("key_name"=>"array","key_function"=>"array_diff_assoc");
$array1 = array("site"=>"forasp","name"=>"网站制作学习网","key_function"=>"array_diff_assoc");
$forasp = array_diff_assoc($array,$array1);
print_r($forasp);
?>

结果:

Array
(
[key_name] => array //也就是这个key-value 值没有在后面的数组中出现,是个不同值。
)

2.如果是无索引的数组呢

<?php
$array = array("forasp","array","array_diff_assoc");
$array1 = array("forasp","网站制作学习网","array_diff_assoc");
$forasp = array_diff_assoc($array,$array1);
print_r($forasp);
?>

结果跟上面的一样,不同的是这个key变成了索引

Array
(
[1] => array //也就是这个key-value 值没有在后面的数组中出现,是个不同值。
)

也就是说在没有索引的数组中,比较的是索引id 和value。

array_diff_assoc就介绍完了,它就是array_diff的升级版本吧。

以上就是PHP中的array_diff_assoc与array_diff函数实例比较的详细内容,更多请关注其它相关文章!