PHP. Учебник. 2005

array_diff_uassoc

Пред.

След.

array_diff_uassoc

(PHP 5)array_diff_uassoc --

Вычислить расхождение в массивах с дополнительной проверкой индекса,

осуществляемой при помощи функции, определённой пользователем

Описание

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

- array_diff_uassoc() возвращает array,

содержащий все значения array1,

не содержащиеся в последующих параметрах.

Обратите внимание, что в отличие от

array_diff(), для сравнения используются ключи.

- Для сравнения используется функция, определённая пользователем.

Она должна возвращать целое число меньшее, равное или большее нуля, если

первый параметр, соответственно, меньше, равен или больше второго.

В отличие от array_diff_assoc(), использующей

для сравнения встроенную функцию.

-

Пример 1. Пример использования array_diff_uassoc()

<?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

)

- В нашем примере пара "a" => "green"

существует в обоих массивах и поэтому не присутствует в выводе функции.

Наоборот, пара 0 => "red"

присутствует в выводе, потому что во втором аргументе значению "red"

соответствует ключ 1.

- Равенство двух индексов проверяется при помощи функции, определённой пользователем.

Замечание:

Обратите внимание, что эта функция обрабатывает только одно измерение

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().

Пред.

Начало

След.

array_diff_key

Уровень выше

array_diff_ukey 22222

Free Web Hosting