downloads | documentation | faq | getting help | mailing lists | licenses | wiki | reporting bugs | php.net sites | links | conferences | my php.net

search for in the

array_diff_ukey> <array_diff_key
Last updated: Fri, 18 Sep 2009

view this page in

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");.

Вж. също

  • array_diff() - Изчислява разлика на масиви
  • array_diff_assoc() - Изчислява разлика на масиви с допълнителна проверка на индекса
  • array_udiff() - Изчислява разлика на масиви посредством функция за обратно извикване за сравнение на данните
  • array_udiff_assoc() - Изчислява разлика на масиви с допълнителна проверка на индекса, сравнявайки данните посредством функция за обратно извикване
  • array_udiff_uassoc() - Изчислява разлика на масиви с допълнителна проверка на индекса, сравнявайки данните и индексите посредством функция за обратно извикване
  • array_intersect() - Изчислява сечението на масиви
  • array_intersect_assoc() - Изчислява сечението на масиви с проверка на индекса
  • array_uintersect() - Изчислява сечението на масиви, сравнявайки данните посредством функция за обратно извикване
  • array_uintersect_assoc() - Изчислява сечението на масиви с допълнителна проверка на индекса, сравнявайки данните посредством функция за обратно извикване
  • array_uintersect_uassoc() - Изчислява сечението на масиви с допълнителна проверка на индекса, сравнявайки данните и индексите посредством функция за обратно извикване



add a note add a note User Contributed Notes
array_diff_uassoc
There are no user contributed notes for this page.

array_diff_ukey> <array_diff_key
Last updated: Fri, 18 Sep 2009
 
 
show source | credits | stats | sitemap | contact | advertising | mirror sites