Функции за работа с масиви
PHP Manual

array_diff_uassoc

(PHP 5)

array_diff_uassocИзчислява разлика на масиви с допълнителна проверка на индекса извършвана от потребителска функция за обратно извикване

Описание

array array_diff_uassoc ( array $array1 , array $array2 [, array $... ], callback $key_compare_func )

Сравнява array1 с array2 и връща разликите. За разлика от функция array_diff(), тук при сравняването се използват и ключовете на масивите.

За разлика от функция array_diff_assoc(), се използва не вътрешна функция, а потребителска функция за обратно извикване.

Параметри

array1

Масивът спрямо който се извършва сравнението

array2

Масивът с който се извършва сравнението

...

Още масиви с които се извършва сравнението

key_compare_func

Функцията за обратно извикване (callback). Обратно извикващата функция трябва да върне цяло число по-малко, равно или по-голямо от нула, ако първият аргумент е съответно по-малък, равен или по-голям от втория.

Връщани стойности

Връща масив съдържащ всички стойности от array1 , които не присъстват в никой от другите масиви.

Примери

Example #1 Пример за array_diff_uassoc()

Двойката "a" => "green" съществува и в двата масива, следователно не се извежда от функцията. За разлика от нея, двойката 0 => "red" се извежда, тъй като вторият аргумент ("red") има ключ, който е равен на 1.

<?php
function key_compare_func($a$b)
{
    if (
$a === $b) {
        return 
0;
    }
    return (
$a $b)? 1:-1;
}

$array1 = array("a" => "green""b" => "brown""c" => "blue""red");
$array2 = array("a" => "green""yellow""red");
$result array_diff_uassoc($array1$array2"key_compare_func");
print_r($result);
?>

Примерът по-горе ще изведе:

Array
(
    [b] => brown
    [c] => blue
    [0] => red
)

Равенството на два израза се проверява с потребителска функция за обратно извикване.

Бележки

Забележка: Функцията проверява само една размерност на n-мерен масив. Разбра се, можете да проверявате и други размерности посредством array_diff_uassoc($array1[0], $array2[0], "key_compare_func");.

Вж. също


Функции за работа с масиви
PHP Manual