zoukankan      html  css  js  c++  java
  • 求数组差/交集函数-php数组函数(二)

    求数组差集函数

    • 函数只检查了多维数组中的一维。可以用 array_diff($array1[0], $array2[0]) 检查更深的维度。
    • u:自定义函数比较,a(association):同时比较
    • 自定义函数callable $value_compare_func必须返回一个小于零,等于零,或大于零的整数。其中返回零代表两个数相等。

    对比数组值的函数


    array_diff

    • 对比(===) array1array2···的值(value),返回在 $array1 中但是不在其他 array 里的值,键名保留不变。
    array array_diff ( array $array1 , array $array2 [, array $... ] )
    

    array_udiff

    • 用自定义函数比较 $array1, $array2···的值(value),函数参数为数组的。返回在$array1,不在其他array的元素,保持键值关联。
    array array_udiff ( array $array1 , array $array2 [, array $... ], callable $value_compare_func )
    
    int value_compare_func(( mixed $a, mixed $b )) //该比较函数必须相应地返回一个小于,等于或大于 0 的整数。
    #返回0,意味着两个数相等,即值在两个数组都出现了,所以等于0不返回值。
    #根据value_compare_func($a, $b)的参数顺序返回元素,如:value_compare_func($b, $ba),返回在$b不在$a的元素
    

    对比数组键的函数


    array_diff_key

    • 对比(===) array1array2···的键(key),所有出现在 $array1 中但是不在其他array中的键(key)的值。
    array array_diff_key ( array $array1 , array $array2 [, array $... ] )
    

    array_diff_ukey

    • 用自定义函数比较 $array1, $array2···的,函数参数为数组的,键不同即返回元素。返回在$array1,不在其他array的元素,保持键值关联。
    array array_diff_ukey ( array $array1 , array $array2 [, array $... ], callable $key_compare_func )
    

    同时对比


    array_diff_assoc

    • 比较 $array1, $array2···的键(key)值(value),返回在$array1,不在其他array的元素,保持键值关联。。
    array array_diff_assoc ( array $array1 , array $array2 [, array $... ] )
    

    array_diff_uassoc

    • 用自定义函数比较 $array1, $array2···的键(key)值(value),回调函数参数为数组的,键值都相同时不返回元素。返回在$array1,不在其他array的元素,保持键值关联。
    array array_diff_uassoc ( array $array1 , array $array2 [, array $... ], callable $key_compare_func )
    

    array_udiff_assoc

    • 用自定义函数比较 $array1, $array2···的键(key)值(value),回调函数参数为数组的,键值都相同时不返回元素。返回在$array1,不在其他array的元素,保持键值关联。
    array array_udiff_assoc ( array $array1 , array $array2 [, array $... ], callable $value_compare_func )
    

    array_udiff_uassoc

    • 用自定义函数比较 $array1, $array2···的键(key)值(value),两个函数参数分别为数组的/。返回在$array1,不在其他array的元素,保持键值关联。
    array array_udiff_uassoc ( array $array1 , array $array2 [, array $... ], callable $value_compare_func , callable $key_compare_func )
    

    求数组交集函数

    • 交集函数和差集函数的用法大同小异

    对比数组的函数,不比较


    array_intersect

    • 计算数组的交集

    array_uintersect

    • 计算数组的交集,用回调函数比较数据

    对比数组的函数,不比较


    array_intersect_key

    • 使用键名比较计算数组的交集

    array_intersect_ukey

    • 用回调函数比较键名来计算数组的交集

    同时对比数组的函数


    array_intersect_assoc

    • 带索引检查计算数组的交集

    array_intersect_uassoc

    • 带索引检查计算数组的交集,用回调函数比较索引

    array_uintersect_assoc

    • 带索引检查计算数组的交集,用回调函数比较数组值

    array_uintersect_uassoc

    • 带索引检查计算数组的交集,用单独的回调函数比较数据和索引

    原文地址:https://segmentfault.com/a/1190000015797875

  • 相关阅读:
    2019-2020 20175207- 20175235 实验四 外设驱动程序设计
    2019-2020 20175207- 20175235 实验三 实时系统
    2019-2020 20175207- 20175235 实验二 固件程序设计
    2019-2020-1 20175207 20175235 实验一开发环境的熟悉
    2018-2019-2 20175235 实验五《网络编程与安全》实验报告
    2018-2019-2 20175235 实验四《Android开发基础》实验报告
    2018-2019-2 20175235 实验三《敏捷开发与XP实践》实验报告
    2018-2019-2 20175235 实验二《Java面向对象程序设计》实验报告
    第六周学习总结
    第五周学习总结
  • 原文地址:https://www.cnblogs.com/lalalagq/p/9979045.html
Copyright © 2011-2022 走看看