php两个数组比较
① php 两个数组做比较的问题
PHP array_diff() 函数
PHP Array 函数
实例
比较两个数组的键值,并返回差集:
<?php
$a1=array("a"=>"red","b"=>"green","c"=>"blue","d"=>"yellow");
$a2=array("e"=>"red","f"=>"green","g"=>"blue");
$result=array_diff($a1,$a2);
print_r($result);
?>
注意返回值是差集数组
网络一下问题就会找到答案,或者收藏这个网址很有用:http://www.w3school.com.cn
希望帮到你
② php如何比较两个数组是否相等
不知你说的相等是什么相等,如果只是数组的值相等,而不管其顺序的话,我有一种思路就是用array_intersect(array1,array2)计算二个数组的交集并返回一个数组,如果返回的数组元素个数与比较的二个数组元素个数相等则二个数组相等,但是元素在数组中的顺序不一定一样,不懂得问我
③ php如何比较两个数组是否相等
<?php$a=array(1,2,5,6,7,8);$b=array(69,36,23,65,66,67,45);$c=array(3,4,7,8,10,13,14); function newarray($arr){$temp1=array();$temp2=array();$temp3=array(); for($i=1;$i<count($arr);$i++){ if($arr[$i] == $arr[$i-1] + 1) { $temp1[$i-1] = $arr[$i-1]; $temp1[$i] = $arr[$i]; }else { $temp2=$temp1; $temp1=array(); } $temp3= (count($temp2) > count($temp1)) ? $temp2 : $temp1 ; }; return $temp3;} var_mp(newarray($a));echo "";var_mp(newarray($b));echo "";var_mp(newarray($c));//不能正确返回$c,因为$c可能有3,4/7,8/13,14三种?>
④ php数组之间进行对比
像这样的数据,只能使用遍历,并且是多层的,不然数据比较不出来.
⑤ php 两个数组比较,如果数组a 和数组b 中的值有一个是相同的,则返回true
$inB = false;
foreach ($a as $v) {
if (in_array($v, $b)) {
$inB = true;
break;
}
}
⑥ php中想实现数组的对比,像以下这样,但是数组单元到几十个就很慢了,有什么好办法呢
array_intersect()该函数比较两个(或更多个)数组的键值,并返回交集数组,该数组包括了所有在被比较的数组(array1)中,
⑦ php 对比2个数组之间的相同值
array_walk_recursive
对数组递归执行自定义函数
或者自己写个递归函数。循环$video_list 用is_array 判断 当前循环出来的$value是否是数组。
是数组在调用这个函数。值就是这个$value,
类似test($array,$live_mub)
array_walk_recursive($video_list,function(&$value,$key)use(&$live_mub){
foreach($live_mubas$k=>$v){
if($key=='id'){
if($value==$v){
//相同执行操作
}else{
//不相同执行操作
}
}
}
});
⑧ php 两个二维数组比较,从第一个二维数组中,将第二个二维数组不同项挑选出来,最终合并成为一个新的数组
方法是使用array_udiff函数。代码如下:
function diff_arr($a, $b){
return $a["id"] > $b["id"] ? 1 : ($a["id"] < $b["id"] ? -1 : 0);
}
print_r(array_udiff($arr0, $arr1, "diff_arr"));
⑨ php两个数组比较的问题
<?php
$arr = array('张三','李四','王五','赵六','钱七');
$arr1 = array('李四','孙不二','丘处机','扫地僧','李寻欢');
foreach($arr as $val)
{
if(in_array($val,$arr1))
{
echo '找到了';
}
}
?>
⑩ PHP 两个数组值比较
$val 表示的是 ([0],[1],[2]...)不是这个而是后面的值
echo $val.($b[$val])."<br>";
你这么输出第一次结果是
$val = 2
$b[2]