Foros del Web » Programando para Internet » PHP »

PHP OO Buscar valores en array Asociativo

Estas en el tema de Buscar valores en array Asociativo en el foro de PHP en Foros del Web. Buenas Amigos. Otra consulta. Estoy empezando a trabajar con Arreglos asociativos bidimencionales, debido a que me parece que pueden ser utiles para manejar. Sin embargo, ...
  #1 (permalink)  
Antiguo 02/09/2012, 20:15
 
Fecha de Ingreso: marzo-2011
Ubicación: Caracas
Mensajes: 389
Antigüedad: 13 años, 8 meses
Puntos: 16
Pregunta Buscar valores en array Asociativo

Buenas Amigos. Otra consulta.


Estoy empezando a trabajar con Arreglos asociativos bidimencionales, debido a que me parece que pueden ser utiles para manejar. Sin embargo, hay cosas que no afino, espero puedan ayudarme. Quiero saber como puedo hacer para buscar un valor especifico en un array e imprimirlo si existe, si de repente hay una funcion que lo haga. y que sea mas eficiente que usar un foreach.
Revisando vi las funcion de array_keys. sin embargo creo que no me funciona. Pondre un arreglo de ejemplo:

Tengo la siguiente matriz.
Código PHP:
Ver original
  1. [0] => Array ( [id] => 1 [nombreCat] => Monitor [padre] => 1 )
  2. [1] => Array ( [id] => 2 [nombreCat] => Monitores HD [padre] => 0 )
  3. [2] => Array ( [id] => 3 [nombreCat] => Monitores Led [padre] => 0 )
  4.  [3] => Array ( [id] => 4 [nombreCat] => 19'' [padre] => 0 )
  5. [4] => Array ( [id] => 5 [nombreCat] => 21'' [padre] => 0 )
  6. [5] => Array ( [id] => 6 [nombreCat] => 13'' [padre] => 0 )
  7. )
Como hago si derepente quiero obtener el "nombreCat" del array dond el id sea 6.? debo recorrerlo todo con dos foreach anidados ajuro? :S estoy hecho un ocho.

Gracias por su ayuda. saludos.
__________________
Lo imposible es lo posible visto por los ojos de un incapaz.
Si te sirve la respuesta. dale + al karma.
Saludos
  #2 (permalink)  
Antiguo 02/09/2012, 21:26
Avatar de Triby
Mod on free time
 
Fecha de Ingreso: agosto-2008
Ubicación: $MX->Gto['León'];
Mensajes: 10.106
Antigüedad: 16 años, 3 meses
Puntos: 2237
Respuesta: Buscar valores en array Asociativo

Sólo usa la ID de categoría para crear cada elemento del array:

Código PHP:
Ver original
  1. $cats = array(
  2.     1 => array('nombreCat' => 'Nombre de categoría 1', 'padre' => 0),
  3.     4 => array('nombreCat' => 'Nombre de categoría 4', 'padre' => 0),
  4.     6 => array('nombreCat' => 'Nombre de categoría 6', 'padre' => 0),
  5. );
  6.  
  7. // Nombre de categoría 6
  8. echo $cats[6]['nombreCat'];
__________________
- León, Guanajuato
- GV-Foto
  #3 (permalink)  
Antiguo 03/09/2012, 01:17
 
Fecha de Ingreso: marzo-2011
Ubicación: Caracas
Mensajes: 389
Antigüedad: 13 años, 8 meses
Puntos: 16
Respuesta: Buscar valores en array Asociativo

Hey Triby gracias por tu pronta respuesta. pero creo que me falto comentar algo. El punto es que ese arreglo se crea dinamicamente. y en teoria, no se si existe o no, y en caso de existir debo comprobar la posición.

Por eso habia pensado en la funcion array_keys pero como es una matriz bidimensional. No me funciona.! :S

Gracias
__________________
Lo imposible es lo posible visto por los ojos de un incapaz.
Si te sirve la respuesta. dale + al karma.
Saludos
  #4 (permalink)  
Antiguo 03/09/2012, 02:16
Avatar de Triby
Mod on free time
 
Fecha de Ingreso: agosto-2008
Ubicación: $MX->Gto['León'];
Mensajes: 10.106
Antigüedad: 16 años, 3 meses
Puntos: 2237
Respuesta: Buscar valores en array Asociativo

Sí, ya me imaginaba que lo creas tomando info de la base de datos, simplemente tienes que crearlo en esa forma, ejemplo:

Código PHP:
Ver original
  1. $cats = array();
  2. while($row = mysql_fetch_assoc($result)) {
  3.     $cats[$row['catId']] = array('nombreCat' => $row['nombreCat'], 'padre' => $row['padre']);
  4. }
__________________
- León, Guanajuato
- GV-Foto

Etiquetas: asociativo
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 15:03.