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

search for in the

array_unique> <array_uintersect_uassoc
[edit] Last updated: Fri, 30 Nov 2012

view this page in

array_uintersect

(PHP 5)

array_uintersectComputes the intersection of arrays, compares data by a callback function

Opis

array array_uintersect ( array $array1 , array $array2 [, array $ ... ], callable $data_compare_func )

Computes the intersection of arrays, compares data by a callback function.

Parametry

array1

The first array.

array2

The second array.

data_compare_func

The comparison function must return an integer less than, equal to, or greater than zero if the first argument is considered to be respectively less than, equal to, or greater than the second.

int callback ( mixed $a, mixed $b )

Zwracane wartości

Returns an array containing all the values of array1 that are present in all the arguments.

Przykłady

Przykład #1 array_uintersect() example

<?php
$array1 
= array("a" => "green""b" => "brown""c" => "blue""red");
$array2 = array("a" => "GREEN""B" => "brown""yellow""red");

print_r(array_uintersect($array1$array2"strcasecmp"));
?>

Powyższy przykład wyświetli:

Array
(
    [a] => green
    [b] => brown
    [0] => red
)

Zobacz też:



add a note add a note User Contributed Notes array_uintersect - [1 notes]
up
0
Nate at RuggFamily dot com
6 years ago
I want to stress that in the user function, you do need to return either a 1 or a -1 properly; you cannot simply return 0 if the results are equal and 1 if they are not. 

The following code is incorrect:

<?php
function myfunction($v1,$v2)
{
if (
$v1===$v2)
    {
    return
0;
    }
return
1;
}

$a1=array(1, 2, 4);
$a2=array(1, 3, 4);
print_r(array_uintersect($a1,$a2,"myfunction"));
?>

This code is correct:

<?php
function myfunction($v1,$v2)
{
if (
$v1===$v2)
    {
    return
0;
    }
if (
$v1 > $v2) return 1;
return -
1;
}
$a1=array(1, 2, 4);
$a2=array(1, 3, 4);
print_r(array_uintersect($a1,$a2,"myfunction"));
?>

 
show source | credits | stats | sitemap | contact | advertising | mirror sites