array_udiff
Computa la diferencia entre matrices, usando una llamada de
retorno para la comparación de datos
&reftitle.description;
arrayarray_udiff
arraymatriz1
arraymatriz2
array ...
callbackfunc_comparacion_datos
Computa la diferencia de las matrices usando una función tipo llamada de
retorno para la comparación de datos. Esto difiere de
array_diff, la cual usa una función interna para la
comparación de datos.
&reftitle.parameters;
matriz1
La primera matriz.
matriz2
La segunda matriz.
func_comparacion_datos
La función llamada de retorno para la comparación.
La llamada de retorno especificada por el usuario es usada para la
comparación. Esta función debe devolver un entero menor que, igual, o
mayor que cero si el primer argumento es considerado como menor,
igual, o mayor que el segundo, respectivamente.
&reftitle.returnvalues;
Devuelve una matriz que contiene todos los valores de
matriz1 que no están presentes en ninguno de los
otros argumentos.
&reftitle.examples;
Ejemplo de array_udiff
miembro_privado = $val;
}
static function func_comp_cr($a, $b)
{
if ($a->miembro_privado === $b->miembro_privado) return 0;
return ($a->miembro_privado > $b->miembro_privado)? 1:-1;
}
}
$a = array("0.1" => new cr(9), "0.5" => new cr(12), 0 => new cr(23), 1=> new cr(4), 2 => new cr(-15),);
$b = array("0.2" => new cr(9), "0.5" => new cr(22), 0 => new cr(3), 1=> new cr(4), 2 => new cr(-15),);
$resultado = array_udiff($a, $b, array("cr", "func_comp_cr"));
print_r($resultado);
?>
]]>
&example.outputs;
cr Object
(
[miembro_privado:private] => 12
)
[0] => cr Object
(
[miembro_privado:private] => 23
)
)
]]>
&reftitle.notes;
Por favor note que esta función sólo analiza una dimensión de una matriz
n-dimensional. Por supuesto, puede analizar dimensiones más profundas
usando array_udiff($matriz1[0], $matriz2[0],
"data_compare_func");.
&reftitle.seealso;
array_diff
array_diff_assoc
array_diff_uassoc
array_udiff_assoc
array_udiff_uassoc
array_intersect
array_intersect_assoc
array_uintersect
array_uintersect_assoc
array_uintersect_uassoc