Foros del Web » Programando para Internet » PHP »

comparacion de elementos en arrays

Estas en el tema de comparacion de elementos en arrays en el foro de PHP en Foros del Web. Hola a todos. No estoy muy puesto en php, pero estoy un poco desesperado. La cuestion es esta. Quiero averiguar las coincidencias de los elementos ...
  #1 (permalink)  
Antiguo 06/02/2009, 14:52
 
Fecha de Ingreso: junio-2008
Mensajes: 4
Antigüedad: 15 años, 9 meses
Puntos: 0
comparacion de elementos en arrays

Hola a todos. No estoy muy puesto en php, pero estoy un poco desesperado.


La cuestion es esta. Quiero averiguar las coincidencias de los elementos dentro de una matriz, y agrupar los que coincidan.
Ejemplo:
el array contiene estos valores
[1hola, 23mundo, 1hola, adios, 23mundo, 32mundo]

e intento obtener...
1hola, 1hola
23mundo, 23mundo
adios
32mundo.

no se si me explico, pero el caso es que estoy intentando realizarlo con dos bucles anidados, pero no me funciona bien.

Alguna idea de como poder salvar esto ? Muchas gracias.
  #2 (permalink)  
Antiguo 06/02/2009, 16:06
Avatar de Triby
Mod on free time
 
Fecha de Ingreso: agosto-2008
Ubicación: $MX->Gto['León'];
Mensajes: 10.106
Antigüedad: 15 años, 8 meses
Puntos: 2237
Respuesta: comparacion de elementos en arrays

Cuenta las coincidencias:

Código PHP:
$valores = array('1hola''23mundo''1hola''adios''23mundo''32mundo');
$cuenta = array();
foreach(
$valores as $val) {
    if(!isset(
$cuenta[$val]))
        
$cuenta[$val] = 0;
    
$cuenta[$val] ++;

De esta forma, $cuenta quedaria asi:

Código PHP:
array(
'hola1' => 2,
'23mundo' => 2,
'adios' => 1,
'32mundo' => 1
); 
__________________
- León, Guanajuato
- GV-Foto
  #3 (permalink)  
Antiguo 07/02/2009, 02:14
 
Fecha de Ingreso: junio-2008
Mensajes: 4
Antigüedad: 15 años, 9 meses
Puntos: 0
Respuesta: comparacion de elementos en arrays

Ok, muchas gracias.
Pero y si quisiera realizar lo siguiente:
ej: tengo dos arrays de este tipo
array1 ('a1020','a1020','a1120','a1020')
array2 ('id10','id11','id10','id10')

y quiero averiguar las repeticiones de valor del array1 pero que tambien coincidan en el array2 (si el elemento 1 es igual al 2, miramos tambien si coincide el elemento 1 del array2 con el elemento 2 del array2. Así el resultado tendria que ser:
a1020 => 2
a1020 => 1
a1120 => 1
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 12:42.