网站制作学习网PHP→正文:php数组比较差异 array_diff-php函数
字体:

php数组比较差异 array_diff-php函数

PHP 2012/7/16 19:37:44  点击:不统计


php数组差异性比较array_diff函数,用来比较不同数组中的value的差异,并以无索引数组输出。
看语法
$newarray = array_diff($array1,$array2.....);
说明一下
php数组比较差异函数array_diff是将$array1中的value与后面的所有array2..的数组值进行比较,返回的是在array1中存在的并且不在array2(后面所有的) 存在的value的值,每个比较返回一个数组结果。这里只比较value值。不用去管$array1是索引数组还是非索引数组。
需要注意的一点:array_diff 不能递归对比,只能是一维数组,如果数组嵌套数组,则将后面的数组按"数组"比较,就算不同的数组也会相同。
看例子学习php数组差异比较array_diff
例子1:有索引的数组
<?php
$old1forasp=array("size"=>'forasp',"domain"=>'www.forasp.cn',"name"=>'网站制作学习网');
$arrayforasp=array("size1"=>'forasp',"domain"=>'cn',"name2"=>'网站制作学习网');
$forasp = array_diff($old1forasp,$arrayforasp);
print_r($forasp);
?>
输出结果
Array
(
[domain] => www.forasp.cn
)
这里注意一点,当数组中的key值一样时,值会被覆盖统计。索引cn的数量是1
例子2 无索引数组
<?php
$old1forasp = array("site","域名","www.forasp.cn");
$arrayforasp = array("site","forasp.cn",);
$forasp = array_diff($old1forasp,$arrayforasp);
print_r($forasp);
?>
输出结果:
Array
(
 [1] => 域名
 [2] => www.forasp.cn
)

例子3 当有多个数组比较,看其返回值
<?php
$old1forasp = array("site","域名","forasp.cn");
$arrayforasp1=array("site");
$arrayforasp2=array("域名");
$forasp = array_diff($old1forasp,$arrayforasp1,$arrayforasp2);
print_r($forasp);
?>
输出结果
Array
(
[2] => forasp.cn
)
这就是数组统计array_count_values(),计算数组中不同value的个数


·上一篇:php数组统计 array_count_values-php函数 >>    ·下一篇:php数组比较差异 array_diff_assoc-php函数 >>
推荐文章
最新文章