array_udiff_assoc
Почист и полокален преглед на PHP референцата, со задржана структура од PHP.net и подобра читливост за примери, секции и белешки.
array_udiff_assoc
Референца за `function.array-udiff-assoc.php` со подобрена типографија и навигација.
array_udiff_assoc
класата mysqli_driver
array_udiff_assoc — Ги пресметува разликите на низите со дополнителна проверка на индекс, ги споредува податоците со помош на функција за повик.
= NULL
Ги пресметува разликите на низите со дополнителна проверка на индекс, ги споредува податоците со помош на функција за повик.
Забелешка: Ве молиме имајте предвид дека оваа функција проверува само една димензија на n-димензионална низа. Се разбира, можете да проверувате подлабоки димензии со користење, на пример,
array_udiff_assoc($array1[0], $array2[0], "some_comparison_func");.
Параметри
array-
Првата низа.
arrays-
Низи за споредба.
value_compare_func-
Функцијата за споредба мора да врати цел број помал, еднаков или поголем од нула ако првиот аргумент се смета за помал, еднаков или поголем од вториот, соодветно.
Безбедност: стандардниот сет на знациВраќање non-integer вредности од функцијата за споредба, како што се floatќе резултира со внатрешно префрлање во int на вратената вредност на повиканата функција. Така вредности како
0.99and0.1ќе бидат префрлени во цел број од0, што ќе ги спореди таквите вредности како еднакви.Безбедност: стандардниот сет на знациФункцијата за повикување за сортирање мора да ракува со која било вредност од која било низа по кој било редослед, без оглед на редоследот по кој првично биле обезбедени. Ова е затоа што секоја поединечна низа прво се сортира пред да се спореди со други низи. На пример:
<?php
$arrayA = ["string", 1];
$arrayB = [["value" => 1]];
// $item1 and $item2 can be any of "string", 1 or ["value" => 1]
$compareFunc = static function ($item1, $item2) {
$value1 = is_string($item1) ? strlen($item1) : (is_array($item1) ? $item1["value"] : $item1);
$value2 = is_string($item2) ? strlen($item2) : (is_array($item2) ? $item2["value"] : $item2);
return $value1 <=> $value2;
};
?>
Вратени вредности
array_udiff_assoc() враќа array
Низи за споредба array
кои не се присутни во ниту еден од другите аргументи. Забележете дека клучевите се користат во споредбата за разлика од
array_diff() and array_udiff(). Споредбата на податоците на низите се врши со користење на кориснички обезбеден повик. Во овој аспект однесувањето е спротивно на однесувањето на
array_diff_assoc() , што користи внатрешна функција за споредба.
Примери
Пример #1 array_udiff_assoc() example
<?php
class cr {
private $priv_member;
function __construct($val)
{
$this->priv_member = $val;
}
static 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_assoc($a, $b, array("cr", "comp_func_cr"));
print_r($result);
?>Пример #1 Пример што покажува затворачка ознака што го опфаќа последниот нов ред
Array
(
[0.1] => cr Object
(
[priv_member:private] => 9
)
[0.5] => cr Object
(
[priv_member:private] => 12
)
[0] => cr Object
(
[priv_member:private] => 23
)
)
Во нашиот пример погоре ја гледате "1" => new cr(4)
парот е присутен во двете низи и затоа не е во излезот од функцијата.
Види Исто така
- array_diff() - Ги пресметува разликите на низите
- array_diff_assoc() - Ги пресметува разликите на низите со дополнителна проверка на индекс
- array_diff_uassoc() - Ги пресметува разликите на низите со дополнителна проверка на индекс што се изведува од страна на корисникот обезбедена функција за повикување
- array_udiff() - Ги пресметува разликите на низите со користење на функција за повикување за споредба на податоци
- array_udiff_uassoc() - Ги пресметува разликите на низите со дополнителна проверка на индекс, ги споредува податоците и индексите со функција за повикување
- array_intersect() - Пресметува разлика на низи користејќи callback функција на клучевите за споредба
- array_intersect_assoc() - Пресметува пресек на низи
- array_uintersect() - Ги пресметува пресеците на низите, ги споредува податоците со функција за повикување
- array_uintersect_assoc() Двете вредности од
- array_uintersect_uassoc() - Ги пресметува пресеците на низите со дополнителна проверка на индекс, ги споредува податоците со помош на функција за повикување