П О Р Т А Л                            
С Е Т Е В Ы Х                          
П Р О Е К Т О В                        
  
                                                 
Главная

О проекте

Web-мастеру
     HTML & JavaScript
     SSI
     Perl
     PHP
     XML & XSLT
     Unix Shell

MySQL

Безопасность

Хостинг

Другое







Самое читаемое:

Учебник PHP - "Для Чайника".
Просмотров 98153 раз(а).

Иллюстрированный самоучитель по созданию сайтов.
Просмотров 29068 раз(а).

Учебник HTML.
Просмотров 56195 раз(а).

Руководство по PHP5.
Просмотров 25934 раз(а).

Хостинг через призму DNS.
Просмотров 30464 раз(а).

Подборка текстов стандартных документов.
Просмотров 28973 раз(а).

Учебник PHP - Самоучитель
Просмотров 33708 раз(а).

Документация на MySQL (учебник & справочное руководство)
Просмотров 34979 раз(а).

Внешние атаки...
Просмотров 26948 раз(а).

Учебник PHP.
Просмотров 22780 раз(а).

SSI в примерах.
Просмотров 17853 раз(а).



 
 



Руководство по PHP
Пред. След.

array_udiff

(PHP 5)

array_udiff -- Вычислить расхождение массивов, используя для сравнения функцию обратного вызова

Описание

array array_udiff ( array array1, array array2 [, array ..., callback data_compare_func] )

array_udiff() возвращает массив, содержащий все значения параметра array1, отсутствующие в последующих аргументах. Обратите внимание, что ключи сохраняются. Для сравнения значений используется функция data_compare_func. Она должна возвращать целое число меньшее, равное или большее нуля, если первый параметр, соответственно, должен считаться меньше, равен или больше второго. Обратите внимание на отличие от array_diff(), которая использует встроенную функцию для сравнения значений массивов.

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

<?php
class cr {
    
private $priv_member;
    function
cr($val)
    {
        
$this->priv_member = $val;
    }
    
    function
comp_func_cr($a, $b)
    {
        if (
$a->priv_member === $b->priv_member) return 0;
        return (
$a->priv_member > $b->priv_member)? 1:-1;
    }
}
$a = array("0.1" => new cr(9), "0.5" => new cr(12), 0 => new cr(23), 1=> new cr(4), 2 => new cr(-15),);
$b = array("0.2" => new cr(9), "0.5" => new cr(22), 0 => new cr(3), 1=> new cr(4), 2 => new cr(-15),);

$result = array_udiff($a, $b, array("cr", "comp_func_cr"));
print_r($result);
?>

Результат выполнения данного примера:

Array
(
[0.5] => cr Object
(
[priv_member:private] => 12
)

[0] => cr Object
(
[priv_member:private] => 23
)

)

Замечание: Обратите внимание, что эта функция обрабатывает только одно измерение многомерного массива. Разумеется, вы можете обработать более одного измерения, используя array_udiff($array1[0], $array2[0], "data_compare_func");.

См. также array_diff(), array_diff_assoc(), array_diff_uassoc(), array_udiff_assoc(), array_udiff_uassoc(), array_intersect(), array_intersect_assoc(), array_uintersect(), array_uintersect_assoc() и array_uintersect_uassoc().


Пред. Начало След.
array_udiff_uassoc Уровень выше array_uintersect_assoc


 





Copyright © 2005-2011 Project.Net.Ru