Inicio PHP JavaScript Manual PHP Links de interes Contacto
Scripts en PHP Programación PHP, lenguaje del lado del servidor.
Scripts PHP - Funciones Funciones  Scripts PHP - Ip´s Ip´s  Scripts PHP - Otros Otros  
Scripts en JavaScript Programación JavaScript, lenguaje del lado del cliente.
Scripts JS - Barra de estado Barra de estado  Scripts JS - Calculadoras Calculadoras  Scripts JS - Efectos Efectos  Scripts JS - Relojes/Calendarios Relojes/Calendarios  
  Manual PHP     Manual PHP  
function.array-udiff -- http://www.mundoscript.com/php/function.array-udiff.html array_udiff

array_udiff

(PHP 5)

array_udiff -- Computa la diferencia entre matrices, usando una llamada de retorno para la comparación de datos.

Descripción

array array_udiff ( array matriz1, array matriz2 [, array ..., callback func_comparacion_datos])

array_udiff() devuelve una matriz que contiene todos los valores de matriz1 que no están presentes en ninguno de los otros argumentos. Note que las claves son preservadas. Para la comparación de datos, se usa func_comparacion_datos. 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. Esto en contraste a array_diff(), la cual usa una función interna para la comparación de datos.

Ejemplo 1. Ejemplo de array_udiff()

<?php
class cr {
    
private $miembro_privado;
    function
cr($val)
    {
        
$this->miembro_privado = $val;
    }

    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);
?>

El resultado es:

Array
(
    [0.5] => cr Object
        (
            [miembro_privado:private] => 12
        )

    [0] => cr Object
        (
            [miembro_privado:private] => 23
        )

)

Nota: Dos elementos son considerados iguales si, y solo si (string) $elem1 === (string) $elem2. Esto es: cuando su representación tipo cadena es la misma.

Nota: 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");.

Vea también array_diff(), array_diff_assoc(), array_diff_uassoc(), array_udiff_assoc(), array_udiff_uassoc(), array_intersect(), array_intersect_assoc(), array_uintersect(), array_uintersect_assoc() y array_uintersect_uassoc().

Web´s ORO

Comparativas

peliculas - musica - trucos
telefonos moviles
directorio de programacion
Web´s PLATA

logiciel gratuit
programas para bajar
ocio y entretenimiento
eliminar virus