//array_diff_uassoc for multidimenssional array
$color_1=array('a'=>'white','b'=>'red','c'=>array('a'=>'green','b'=>'blue','c'=>'yellow'));
$color_2=array('a'=>'white','b'=>'red','c'=>array('a'=>'white','b'=>'red','c'=>'yellow'));
function key_compare($a,$b){
if($a===$b) return 0;
return($a>$b)?1:-1;
}
print_r(array_diff_uassoc($color_1['c'], $color_2['c'],"key_compare"));
//Output
Array
(
[a] => green
[b] => blue
)array_diff_uassoc
Почист и полокален преглед на PHP референцата, со задржана структура од PHP.net и подобра читливост за примери, секции и белешки.
array_diff_uassoc
Референца за `function.array-diff-uassoc.php` со подобрена типографија и навигација.
array_diff_uassoc
класата mysqli_driver
array_diff_uassoc — Ги пресметува разликите на низите со дополнителна проверка на индекс што ја врши корисникот обезбедена функција за повикување
= NULL
Ги пресметува разликите на низите со дополнителна проверка на индекс array against arrays Споредува array_diff() клучовите на низата се користат во споредбата.
За разлика од array_diff_assoc() се користи callback функција обезбедена од корисникот за споредба на индексите, а не внатрешна функција.
Параметри
array-
клучовите на низата исто така се користат во споредбата.
arrays-
Низата од која треба да се спореди
key_compare_func-
Функцијата за споредба мора да врати цел број помал, еднаков или поголем од нула ако првиот аргумент се смета за помал, еднаков или поголем од вториот, соодветно.
Безбедност: стандардниот сет на знациВраќање non-integer вредности од функцијата за споредба, како што се floatќе резултира со внатрешно префрлање во int на вратената вредност на повиканата функција. Така вредности како
0.99and0.1ќе бидат префрлени во цел број од0, што ќе ги спореди таквите вредности како еднакви.
Вратени вредности
Враќа array што ги содржи сите внесувања од
array кои содржат сите вредности од
Примери
Пример #1 array_diff_uassoc() example
кои не се присутни во ниту една од другите низи. "a" => "green"
Во овој пример 0 => "red"
парот е присутен во двете низи и затоа не е во излезот од функцијата. За разлика од ова, парот "red" е во излезот бидејќи клучот на 0 автоматски му е доделен на 1 во првата низа, додека пак нему му е доделен на 0 во втората низа бидејќи клучот yellow.
<?php
function key_compare_func($a, $b)
{
return $a <=> $b;
}
$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);
?>Пример #1 Пример што покажува затворачка ознака што го опфаќа последниот нов ред
Array
(
[b] => brown
[c] => blue
[0] => red
)
Еднаквоста на 2 индекси се проверува со корисникот обезбедена функција за повикување.
Белешки
Забелешка:
. Со други зборови, се врши строга проверка, така што нивните текстуални претстави мора да бидат исти.
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() - Пресметува разлика на низи користејќи callback функција на клучевите за споредба
- array_intersect_assoc() - Пресметува пресек на низи
- array_uintersect() - Ги пресметува пресеците на низите, ги споредува податоците со функција за повикување
- array_uintersect_assoc() Двете вредности од
- array_uintersect_uassoc() - Ги пресметува пресеците на низите со дополнителна проверка на индекс, ги споредува податоците со помош на функција за повикување