Foros del Web » Programando para Internet » PHP »

Comparar 2 arrays valor por valor

Estas en el tema de Comparar 2 arrays valor por valor en el foro de PHP en Foros del Web. hola gente, tengo un problemita, si tenemos 2 arrays: Código PHP: Array (     [ 0 ] =>  11      [ 1 ] =>  91      [ 2 ...
  #1 (permalink)  
Antiguo 29/05/2012, 01:23
Avatar de cadrogui  
Fecha de Ingreso: junio-2003
Mensajes: 875
Antigüedad: 20 años, 10 meses
Puntos: 5
Comparar 2 arrays valor por valor

hola gente, tengo un problemita, si tenemos 2 arrays:

Código PHP:
Array
(
    [
0] => 11
    
[1] => 91
    
[2] => 27

y

Código PHP:

Array
(
    [
0] => 11
    
[1] => 12
    
[2] => 27

como puedo comparar los arrays e identificar la clave del valor que difiere?

gracias.
__________________
La mejor manera de aprender es por medio de un aprendizaje significativo....

http://www.cocert.cl
  #2 (permalink)  
Antiguo 29/05/2012, 01:29
 
Fecha de Ingreso: mayo-2012
Ubicación: República Dominicana
Mensajes: 37
Antigüedad: 11 años, 10 meses
Puntos: 4
Respuesta: Comparar 2 arrays valor por valor

No comprendo podrías explicarte mejor?
  #3 (permalink)  
Antiguo 29/05/2012, 01:32
Avatar de cadrogui  
Fecha de Ingreso: junio-2003
Mensajes: 875
Antigüedad: 20 años, 10 meses
Puntos: 5
Respuesta: Comparar 2 arrays valor por valor

hola!, la idea es determinar que la diferencia en el ejemplo esta en la clave 1 del array, es decir el valor [1] de ambos arrays
__________________
La mejor manera de aprender es por medio de un aprendizaje significativo....

http://www.cocert.cl
  #4 (permalink)  
Antiguo 29/05/2012, 05:08
 
Fecha de Ingreso: mayo-2012
Mensajes: 61
Antigüedad: 11 años, 11 meses
Puntos: 23
Respuesta: Comparar 2 arrays valor por valor

si entendi bien, puedes hacer con la funcion array_diff:

http://www.php.net/manual/es/function.array-diff.php

o puedes hacerlo manualmente asi (siempre y cuando los dos arrays tengan la misma longitud, si no se te saldra del rango):

Código PHP:
for($i=0;$i<count($array1);$i++){
    if(
$array1[$i] != $array2[$i]){
         echo 
"El dato de la posicion "$i ." es distinto";
    }

Saludos!
  #5 (permalink)  
Antiguo 29/05/2012, 10:22
Avatar de cadrogui  
Fecha de Ingreso: junio-2003
Mensajes: 875
Antigüedad: 20 años, 10 meses
Puntos: 5
Respuesta: Comparar 2 arrays valor por valor

gracias por su ayuda, lo hice con un foreach...

saludos
__________________
La mejor manera de aprender es por medio de un aprendizaje significativo....

http://www.cocert.cl
  #6 (permalink)  
Antiguo 29/05/2012, 10:29
Avatar de jotaincubus  
Fecha de Ingreso: mayo-2005
Ubicación: Medellin - Colombia
Mensajes: 1.797
Antigüedad: 18 años, 11 meses
Puntos: 394
Respuesta: Comparar 2 arrays valor por valor

Tal ves te hubiese servido array_diff
__________________
Por que existe gente que no agradece después de que se le ha brindado tiempo y ayuda ???
  #7 (permalink)  
Antiguo 29/05/2012, 10:31
Avatar de cadrogui  
Fecha de Ingreso: junio-2003
Mensajes: 875
Antigüedad: 20 años, 10 meses
Puntos: 5
Respuesta: Comparar 2 arrays valor por valor

al parecer array_diff no entrega la clave del valor que difiere.

saludos
__________________
La mejor manera de aprender es por medio de un aprendizaje significativo....

http://www.cocert.cl
  #8 (permalink)  
Antiguo 29/05/2012, 10:36
Avatar de jotaincubus  
Fecha de Ingreso: mayo-2005
Ubicación: Medellin - Colombia
Mensajes: 1.797
Antigüedad: 18 años, 11 meses
Puntos: 394
Respuesta: Comparar 2 arrays valor por valor

Cita:
Iniciado por cadrogui Ver Mensaje
al parecer array_diff no entrega la clave del valor que difiere.

saludos
Tienes toda la razon... que tal array_diff_assoc
__________________
Por que existe gente que no agradece después de que se le ha brindado tiempo y ayuda ???
  #9 (permalink)  
Antiguo 29/05/2012, 10:55
Avatar de cadrogui  
Fecha de Ingreso: junio-2003
Mensajes: 875
Antigüedad: 20 años, 10 meses
Puntos: 5
Respuesta: Comparar 2 arrays valor por valor

muchas gracias, array_diff_assoc funciona de maravillas, y me entrega el indice donde difieren.

saludos
__________________
La mejor manera de aprender es por medio de un aprendizaje significativo....

http://www.cocert.cl

Etiquetas: arrays
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 16:47.