Foros del Web » Programando para Internet » PHP »

Leer datos de un array contenido en otro

Estas en el tema de Leer datos de un array contenido en otro en el foro de PHP en Foros del Web. Hola amigos les cuento que tengo una clase que tiene un metodo que me devuelve un array con otros array como este que esta metido ...
  #1 (permalink)  
Antiguo 04/05/2011, 10:51
Avatar de baxi2990  
Fecha de Ingreso: agosto-2008
Ubicación: Quetzaltenango - Guatemala
Mensajes: 340
Antigüedad: 15 años, 7 meses
Puntos: 2
Leer datos de un array contenido en otro

Hola amigos les cuento que tengo una clase que tiene un metodo que me devuelve un array con otros array como este que esta metido en un ciclo while para obtener varios datos de una consulta a mi base de datos

Código PHP:
$datos = array('succes'=>true'data'=>array('idCliente'=>$this->data);
return 
$datos
ya cuando utilizo esto quisiera , primero obtener el tamaño de array data luego leer cada uno de sus datos sera posible esto? agradesco la ayuda.
  #2 (permalink)  
Antiguo 04/05/2011, 10:53
Colaborador
 
Fecha de Ingreso: octubre-2009
Ubicación: Tokyo - Japan !
Mensajes: 3.867
Antigüedad: 14 años, 6 meses
Puntos: 334
Respuesta: Leer datos json

Cita:
Iniciado por baxi2990 Ver Mensaje
Hola amigos les cuento que tengo una clase que tiene un metodo que me devuelve un array con otros array como este que esta metido en un ciclo while para obtener varios datos de una consulta a mi base de datos

Código PHP:
$datos = array('succes'=>true'data'=>array('idCliente'=>$this->data);
return 
$datos
ya cuando utilizo esto quisiera , primero obtener el tamaño de array data luego leer cada uno de sus datos sera posible esto? agradesco la ayuda.
y para que preguntas por json en el titulo de tu pregunta entonces ?

www.php.net/count

saludos.
__________________
More about me...
~ @rhyudek1
~ Github
  #3 (permalink)  
Antiguo 04/05/2011, 10:53
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Leer datos json

Claro que es posible, solo debes aprender a trabajar con arrays y funciones para arrays.

Te invito a investigar en el manual:
http://www.php.net/manual/en/language.types.array.php

Edito: cierto lo del titulo, ¿WTF JSON?
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #4 (permalink)  
Antiguo 04/05/2011, 11:07
Avatar de baxi2990  
Fecha de Ingreso: agosto-2008
Ubicación: Quetzaltenango - Guatemala
Mensajes: 340
Antigüedad: 15 años, 7 meses
Puntos: 2
Respuesta: Leer datos json

ou ou perdon jaja es que ando algo traumado ya con eso jeje lo siento, por pensar en json lo puse en vez del array si se pudiera corregir lo agradeceria, gracias por la ayuda voy a echar un ojo y les cuento gracias.
  #5 (permalink)  
Antiguo 04/05/2011, 12:07
Avatar de baxi2990  
Fecha de Ingreso: agosto-2008
Ubicación: Quetzaltenango - Guatemala
Mensajes: 340
Antigüedad: 15 años, 7 meses
Puntos: 2
Respuesta: Leer datos de un array contenido en otro

sigo sin hacer que funcione tengo esto

Código PHP:
$menu = new Usuario();    
    
$bancos $menu->listaBancos();        
    foreach (
$bancos as $ids => $idBanc){
        foreach (
$idBanc as $id => $valor){
            echo 
$valor."<br>";            
        }
    } 
el array que se genera en la clase es el siguiente
Código PHP:
$datos = array('succes'=>true'data'=>array('idCliente'=>$this->data);
return 
$datos
y me muestra este error invalid argument supplied for foreach()
  #6 (permalink)  
Antiguo 04/05/2011, 12:21
Colaborador
 
Fecha de Ingreso: octubre-2009
Ubicación: Tokyo - Japan !
Mensajes: 3.867
Antigüedad: 14 años, 6 meses
Puntos: 334
Respuesta: Leer datos de un array contenido en otro

Código PHP:
Ver original
  1. foreach ($bancos as $ids => $idBanc){
  2.         // if (is_array($idBanc)) {
  3.         foreach ($idBanc as $id => $valor){
  4.             echo $valor."<br>";            
  5.         }
  6.     }

podrías agregar una validación por ahí ?

saludos.
__________________
More about me...
~ @rhyudek1
~ Github
  #7 (permalink)  
Antiguo 04/05/2011, 12:41
Avatar de baxi2990  
Fecha de Ingreso: agosto-2008
Ubicación: Quetzaltenango - Guatemala
Mensajes: 340
Antigüedad: 15 años, 7 meses
Puntos: 2
Respuesta: Leer datos de un array contenido en otro

Hidek1 gracias por tu respuesta bueno se controlo eso que exactamente lo daba por que todo lo tomaba como arrays y el succes=>true no tenia otros campos que estaban vacios, ahora lo unico que hace es mostrarme en pantalla Array :( no entiendo que este haciendo mal.
  #8 (permalink)  
Antiguo 04/05/2011, 13:03
Avatar de baxi2990  
Fecha de Ingreso: agosto-2008
Ubicación: Quetzaltenango - Guatemala
Mensajes: 340
Antigüedad: 15 años, 7 meses
Puntos: 2
Respuesta: Leer datos de un array contenido en otro

Listo, lo solucione jeje solamente le faltaba una iteracion mas con foreach asi

Código PHP:
foreach ($bancos as $idArr => $idBanc){
        if(
is_array($idBanc)){
            foreach (
$idBanc as $col => $valor){
                foreach (
$valor as $l => $val){
                    echo 
$val."<br>";
                }
            }
        }        
    } 
Grcias por la ayuda.
  #9 (permalink)  
Antiguo 05/05/2011, 09:34
Avatar de baxi2990  
Fecha de Ingreso: agosto-2008
Ubicación: Quetzaltenango - Guatemala
Mensajes: 340
Antigüedad: 15 años, 7 meses
Puntos: 2
Respuesta: Leer datos de un array contenido en otro

Bueno ahora me surge una duda, si es posible por ejemplo acceder a un contenido del array en especifico ya que seguin entiendo el foreach recorre todo y no se puede especificar algo asi como $array[0][1] alguna sugerencia? esta es la estructura.

array(2) { ["success"]=> bool(true) ["data"]=> array(2) { [0]=> array(1) { ["idBanco1"]=> string(1) "1" } [1]=> array(1) { ["idBanco2"]=> string(1) "2" } } }

Última edición por baxi2990; 05/05/2011 a las 10:10

Etiquetas: json
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 06:03.