Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] Como eliminar datos que se repitan entre 2 array ?

Estas en el tema de Como eliminar datos que se repitan entre 2 array ? en el foro de PHP en Foros del Web. Hola amigos, Tengo 2 array quiero saber como puedo crear uno con base a los 2 pero que solo queden los datos que no re ...
  #1 (permalink)  
Antiguo 21/01/2014, 16:26
Avatar de adryan310  
Fecha de Ingreso: septiembre-2012
Mensajes: 450
Antigüedad: 11 años, 8 meses
Puntos: 3
Pregunta Como eliminar datos que se repitan entre 2 array ?

Hola amigos,

Tengo 2 array quiero saber como puedo crear uno con base a los 2 pero que solo queden los datos que no re repitan entre ellos, ejemplo:
Código PHP:
 $array1 = array('123','1234','12345','123','123');
 
$array2 = array('123456','123456','123'); 
La union de estos 2 array quisiera que me quedara asi:
Código PHP:
  $arrayUnion = array('1234','12345'); 
Que sea algo asi que valide que si los datos de abajo se repiten con los de arriba no salga o si se repiten entre ellos mismos, alguna ayuda ?
  #2 (permalink)  
Antiguo 21/01/2014, 16:31
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Respuesta: Como eliminar datos que se repitan entre 2 array ?

Usa array_intersect para eso.

Saludos.
  #3 (permalink)  
Antiguo 21/01/2014, 16:41
Avatar de adryan310  
Fecha de Ingreso: septiembre-2012
Mensajes: 450
Antigüedad: 11 años, 8 meses
Puntos: 3
Exclamación Respuesta: Como eliminar datos que se repitan entre 2 array ?

Amigo comprendo lo que me recomendaste y me parece muy bien solo que ahora que me fijo bien lo que necesito es crear un array el $arrayUnion y que este contenga solo los datos que no aparezcan en el $array1 osea el busca en el $array2 los datos que no sean iguales a los que tenga $array1 en caso de que no sea igual entonces lo mete en $arrayUnion, alguna otra recomendacion? gracias
  #4 (permalink)  
Antiguo 21/01/2014, 16:53
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Respuesta: Como eliminar datos que se repitan entre 2 array ?

array_diff
  #5 (permalink)  
Antiguo 21/01/2014, 17:14
Avatar de adryan310  
Fecha de Ingreso: septiembre-2012
Mensajes: 450
Antigüedad: 11 años, 8 meses
Puntos: 3
Pregunta Respuesta: Como eliminar datos que se repitan entre 2 array ?

Amigo probe y no me sirve,

quiero saber si existe alguna manera de remover de un array los datos que sean igual a los que contanga otro array. te doy un ejemplo mas claro:
Código PHP:
$array1 = array(1,2,3,4,5);
$array4 = array(1,2,7,8,9,3,4); 
Entonces lo que quiero es que mi array de resultado quede asi:
Código PHP:
$resultado = array(7,8,9
ya que 1,2,3 y 4 salian en el primer array. Alguna otra ayuda?
  #6 (permalink)  
Antiguo 21/01/2014, 17:43
Avatar de Alexis88
Philosopher
 
Fecha de Ingreso: noviembre-2011
Ubicación: Tacna, Perú
Mensajes: 5.552
Antigüedad: 12 años, 5 meses
Puntos: 977
Respuesta: Como eliminar datos que se repitan entre 2 array ?

Lo que buscas hacer es, en teoría de conjuntos, una diferencia de conjuntos, en donde el resultado son los elementos de un conjunto que no se encuentran en el que se le está restando. La función array_diff, que acertadamente te recomendó utilizar GatorV, realiza la resta de los elementos de un array con otro, por ejemplo:

Código PHP:
Ver original
  1. $array1 = array(1, 2, 3, 4, 5);
  2. $array2 = array(4, 5, 6, 7, 8);
  3. $array3 = array_diff($array2, $array1);
  4.  
  5. echo implode("\n", $array3);

El resultado es el siguiente:

Código HTML:
Ver original
  1. 6
  2. 7
  3. 8

Tienes que acostumbrarte a probar con lo que se te aconseja utilizar, de otro modo, ya habrías resuelto esto.

Saludos
__________________
«Juro por mi vida y mi amor por ella, que jamás viviré para el provecho de otro hombre, ni le pediré a otro hombre que viva para el mío».

Ayn Rand
  #7 (permalink)  
Antiguo 21/01/2014, 17:55
Avatar de adryan310  
Fecha de Ingreso: septiembre-2012
Mensajes: 450
Antigüedad: 11 años, 8 meses
Puntos: 3
De acuerdo Respuesta: Como eliminar datos que se repitan entre 2 array ?

Gracias amigo probare y te comento...
  #8 (permalink)  
Antiguo 21/01/2014, 18:24
Avatar de adryan310  
Fecha de Ingreso: septiembre-2012
Mensajes: 450
Antigüedad: 11 años, 8 meses
Puntos: 3
De acuerdo Respuesta: Como eliminar datos que se repitan entre 2 array ?

Amigos son unos genios gracias por la ayuda me funciono muy bn

Etiquetas: Ninguno
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 18:15.