查询

array_uintersect()函数—用法及示例

「 计算两个或多个数组的交集,使用用户自定义的回调函数来比较数组的值 」


array_uintersect() 函数用于计算两个或多个数组的交集,使用用户自定义的回调函数来比较数组的值。

用法:

array_uintersect(array $array1, array $array2, callable $callback) : array

参数说明:

  • $array1:第一个数组。
  • $array2:第二个数组。
  • $callback:用户自定义的回调函数,用于比较数组的值。该函数应接受两个参数,并返回一个整数值:
    • 如果返回值小于 0,则表示第一个参数小于第二个参数。
    • 如果返回值等于 0,则表示第一个参数等于第二个参数。
    • 如果返回值大于 0,则表示第一个参数大于第二个参数。

返回值: 返回一个包含交集值的新数组。

示例:

// 定义一个回调函数来比较数组的值
function compareValues($a, $b) {
    if ($a == $b) {
        return 0;
    }
    return ($a < $b) ? -1 : 1;
}

// 两个数组
$array1 = [1, 2, 3, 4, 5];
$array2 = [4, 5, 6, 7, 8];

// 调用 array_uintersect() 函数获取交集
$result = array_uintersect($array1, $array2, 'compareValues');

// 输出结果
echo '<pre>';
print_r($result);
echo '</pre>';

输出结果:

Array
(
    [0] => 4
    [1] => 5
)

在上面的示例中,我们定义了一个回调函数 compareValues(),它比较两个值是否相等。然后,调用 array_uintersect() 函数来计算 $array1$array2 的交集,使用 compareValues() 函数进行比较。最后,通过使用 <pre> 标签来格式化输出结果数组。在这个例子中,交集结果是 [4, 5]

补充纠错
上一个函数: array_udiff_uassoc()函数
下一个函数: array_uintersect_assoc()函数
热门PHP函数
分享链接