Compare os nomes das chaves de dois arrays (use uma função definida pelo usuário para comparar os nomes das chaves) e retorne a diferença:
<?phpfunction minhafunção($a,$b){if ($a===$b) { return 0; ($a>$b)?1:-1;}$a1=array("a"=>"vermelho","b"=>"verde","c"=>"azul");$a2= array("a"=>"azul","b"= >"preto","e"=>"azul");$resultado=array_diff_ukey($a1,$a2,"minhafunção");print_r($resultado);?>A função array_diff_ukey() é usada para comparar os nomes das chaves de dois (ou mais) arrays e retornar a diferença.
Nota: Esta função usa uma função definida pelo usuário para comparar nomes de teclas!
Esta função compara as chaves de duas (ou mais) matrizes e retorna uma matriz de diferença que inclui todas as chaves na matriz comparada ( array1 ), mas não em nenhuma das outras matrizes de argumentos ( array2 ou array3, etc.)) na chave nome.
array_diff_ukey( array1,array2,array3...,minhafunção );
parâmetro | descrever |
---|---|
matriz1 | Obrigatório. A primeira matriz a ser comparada com outras matrizes. |
matriz2 | Obrigatório. A matriz a ser comparada com a primeira matriz. |
matriz3,... | Opcional. array adicional para comparar com o primeiro array |
minha função | Obrigatório. Uma string que define uma função de comparação que pode ser chamada. Se o primeiro parâmetro for <, =, > o segundo parâmetro, a função de comparação correspondente deverá retornar um número inteiro <, =, > 0. |
Valor de retorno: | Retorna uma matriz de diferença contendo todas as chaves que estão na matriz comparada ( array1 ), mas não em nenhuma das outras matrizes de argumentos ( array2 ou array3 , etc.). |
---|---|
Versão PHP: | 5.1+ |
Compare os nomes das chaves dos três arrays (use uma função definida pelo usuário para comparar os nomes das chaves) e retorne a diferença:
<?phpfunction minhafunção($a,$b){if ($a===$b) { return 0; ($a>$b)?1:-1;}$a1=array("a"=>"vermelho","b"=>"verde","c"=>"azul");$a2= array("a"=>"preto","b"=>"amarelo","d"=>"marrom");$a3 =array("e"=>"roxo","f"=>"branco","a"=>"dourado");$result=array_diff_ukey($a1,$a2,$a3,"minhafunção"); print_r($resultado);?>