962148150 发表于 2018-12-14 10:59:23

php 学习笔记--数组篇(8)

  array_udiff(aray1, array2, string);
  作用:
  自定义函数比较俩个或者多个数组的差集, 比较value

  参数:
  array1: 数组1
  array2: 数组2
  string:自定义函数名
  返回值:
  返回被比较的差集.
  例子:比较3个数组
$a1 = array('a' => 'red', 'b' => 'green', 'c' => 'black', 'd' => 'purple');
$a2 = array('a' => 'red' );
$a3 = array('c' => 'green');
function myFunction($a, $b)
{
   if($a == $b)
   {   
         return 0;
   }   
   return $a>$b? 1 : -1;
}
$res = array_udiff($a1, $a2, $a3,'myFunction');
print_r($res);
输出结果:
Array
(
    => black
    => purple
)  

  array_udif_assoc(array1,array2, string);

  作用:
  自定义函数比较俩个或者多个数组的差集,比较key和value
  参数:
  array1:比较的数组1
  array2:比较数组2
  string:自定义函数名
  返回值:
  返回俩个数组或者多个数组的差集
  例子:比较3个数组
$a1 = array('a' => 'red', 'b' => 'green', 'c' => 'black', 'd' => 'purple');
$a2 = array('a' => 'red' );
$a3 = array('c' => 'green');
function myFunction($a, $b)
{
   if($a == $b)
   {   
         return 0;
   }   
   return $a>$b? 1 : -1;
}
$res = array_udiff_assoc($a1, $a2, $a3,'myFunction');
print_r($res);
输出结果:
Array
(
    => green
    => black
    => purple
)  

  array_udiff_uassoc(array1, arrray2, string1, string2);
  作用:
  比较俩个或者多个数组的差集,数组的key和value需要自定义函数
  参数:
  array1: 需要比较的数组1

  array2: 比较的数组2
  string1:自定义比较key值的函数名
  string2:自定义比较value值的函数名
  返回:
  比较后的差集的数组
  例子: 比较俩个数组
$a1 = array('a' => 'red', 'b' => 'green', 'c' => 'black', 'd' => 'purple');
$a2 = array('n' => 'red' );
function my_key($a, $b)
{
   if($a === $b)
   {   
         return 0;
   }   
   return $a > $b ? 1 : -1;
}
function my_value($a, $b)
{
   if($a === $b)
   {   
         return 0;
   }   
   return $a > $b? 1 : -1;
}
$res = array_udiff_uassoc($a1, $a2 , 'my_key', 'my_value');
print_r($res);
输出参数:
Array
(
    => red
    => green
    => black
    => purple
)  




页: [1]
查看完整版本: php 学习笔记--数组篇(8)