English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
array_udiff — Calcula a diferença de arrays usando uma função de chamada para comparação de dados
array_udiff($array1, $array2 , $array3 ..., $data_compare_func]);
Ele usa a função de chamada para comparação de dados para calcular a diferença do array e retorna um array, contendo array1Tudo o que não existe em outros parâmetros. Diferente de array_diff(), o primeiro usa função integrada para comparação de dados.
Número | Especificações |
---|---|
1parâmetro | array1(obrigatório) Ela especifica um array. |
2 | array2(obrigatório) Ela especifica o array a ser comparado com o primeiro array. |
3 | array3(opcional) Ela especifica o array a ser comparado com o primeiro array. |
4 | data_compare_func(obrigatório) Nome da função personalizada do usuário. |
Ele retorna um array, retornando array1 não presente em outros parâmetros.
Uso de função personalizada para comparar dois arrays
<?php function myfunction($a,$b) { if ($a=== $b) { return 0; } return ($a>$b)?1:-1; } $a1=array("a"=>"vermelho","b"=>"verde","c"=>"azul"); $a2=array("a"=>"azul","b"=>"preto","e"=>"azul"); $result=array_udiff($a1,$a2,"myfunction"); print_r($result); ?>Teste e veja‹/›
Resultado de Saída:
Array ( [a] => vermelho [b] => verde )