两个二维数组求差集用array_diff()不管用 ,使用一下的函数即可
$array1=array( array( "duankou"=> "gbe3", "local"=>"192.168.1.186", "serverip"=>"192.168.1.119,192.168.1.125,192.168.1.182:3362" ) ); $array2=array( array( "duankou"=>"gbe3", "local"=>"192.168.1.186", "server"=>"192.168.1.125" ) ); function array_diff_assoc2_deep($array1, $array2) { $ret = array(); foreach ($array1 as $k => $v) { if (!isset($array2[$k])) $ret[$k] = $v; else if (is_array($v) && is_array($array2[$k])) $ret[$k] = array_diff_assoc2_deep($v, $array2[$k]); else if ((string)$v != (string)$array2[$k]) $ret[$k] = $v; } return $ret; } print_r(array_diff_assoc2_deep($array2, $array1));
分类:PHP
标签: