array_uintersect () es una función incorporada en PHP y se usa para calcular la intersección de dos o más arrays según los valores. Los primeros valores de array se comparan con todas las demás arrays con la ayuda de una función definida por el usuario y se devuelven las coincidencias.
Sintaxis:
array_uintersect($array1, $array2, $array3, ..... $arrayn, user_function
Parámetros: Esta función acepta dos tipos de parámetros. Una es una lista de arrays y otra es una función definida por el usuario.
- Lista de arreglos : Esta función acepta una lista de arreglos separados por espacios para los cuales queremos encontrar la intersección. En la sintaxis anterior, la lista de arrays es $array1, $array2, $array3, ….. $array . Puede aceptar cualquier número de arrays separadas por espacios con un mínimo de 2.
- user_function: este es un parámetro de tipo string que es el nombre de una función definida por el usuario. La función devuelve 0 cuando los valores de su parámetro son iguales, devuelve 1 si el primer parámetro es mayor que el segundo, de lo contrario devuelve -1.
Valor devuelto: la función devuelve otra array que contiene todos los elementos de la primera array que están presentes en todas las demás arrays pasadas como parámetro. Si ningún elemento coincide, se devuelve una array NULL.
Ejemplos:
Input : $a1=array("a"=>"striver", "b"=>"geeks", "d"=>"raj") $a2=array("d"=>"articles", "e"=>"raj", "f"=>"coding") Output : Array ( [d] => raj ) Input :$a1 = array("1"=>"geeks", "2"=>"for", "3"=>"geek", "4"=>"coding") $a2 = array("1"=>"geeks", "2"=>"for", "3"=>"php", "4"=>"coding", "5"=>"ide") $a3 = array("6"=>"cpp", "7"=>"java", 8=>"geeks") Output : Array ( [1] => geeks )
Los siguientes programas ilustran la función array_uintersect():
Programa 1: programa PHP para demostrar el funcionamiento de la función array_uintersect().
<?php // PHP program to demonstrate the working of // array_uintersect() function // user-defined function function user_function($a, $b) { if ($a===$b) { return 0; } return ($a>$b)?1:-1; } // arrays $a1=array("a"=>"striver", "b"=>"geeks", "d"=>"raj"); $a2=array("d"=>"articles", "e"=>"raj", "f"=>"coding"); $result=array_uintersect($a1, $a2, "user_function"); print_r($result); ?>
Producción:
Array ( [d] => raj )
Programa 2: programa PHP para demostrar el funcionamiento de la función array_uintersect() con tres arrays.
<?php // PHP program to demonstrate the working of // array_uintersect() function with 3 arrays // user-defined function function user_function($a, $b) { if ($a===$b) { return 0; } return ($a>$b)?1:-1; } // 3 arrays $a1 = array("1"=>"geeks", "2"=>"for", "3"=>"geek", "4"=>"coding"); $a2 = array("1"=>"geeks", "2"=>"for", "3"=>"php", "4"=>"coding", "5"=>"ide"); $a3 = array("6"=>"cpp", "7"=>"java", 8=>"geeks"); $result=array_uintersect($a1, $a2, $a3, "user_function"); print_r($result); ?>
Producción:
Array ( [1] => geeks )
Referencia :
http://php.net/manual/en/function.array-uintersect.php