温馨提示×

php array_udiff示例代码解析

PHP
小樊
82
2024-09-06 00:50:27
栏目: 编程语言

array_udiff() 函数用于比较两个或多个数组,并返回一个新数组,其中包含了与其他数组不同的元素。这个函数需要一个用户自定义的回调函数来确定数组元素是否相等。

下面是一个 array_udiff() 的示例代码及其解析:

<?php
function compare_values($value1, $value2) {
    if ($value1 == $value2) {
        return 0;
    } elseif ($value1 > $value2) {
        return 1;
    } else {
        return -1;
    }
}

$array1 = array(1, 2, 3, 4, 5);
$array2 = array(3, 4, 5, 6, 7);

$result = array_udiff($array1, $array2, 'compare_values');

print_r($result);
?>

解析:

  1. 首先,我们定义了一个名为 compare_values 的回调函数,该函数接受两个参数($value1$value2)。这个函数用于比较两个数组元素的大小。如果它们相等,返回 0;如果 $value1 大于 $value2,则返回 1;否则返回 -1。

  2. 然后,我们创建了两个数组 $array1$array2,分别包含一些整数。

  3. 使用 array_udiff() 函数比较这两个数组。这个函数需要三个参数:第一个数组、第二个数组以及回调函数的名称(在本例中为 ‘compare_values’)。

  4. 将结果存储在 $result 变量中,并使用 print_r() 函数输出结果。在这个例子中,输出的结果应该是:

Array
(
    [0] => 1
    [1] => 2
)

这表示 $array1 中与 $array2 不同的元素是 1 和 2。

0