Foros del Web » Programando para Internet » PHP »

Funcion mostrar matriz

Estas en el tema de Funcion mostrar matriz en el foro de PHP en Foros del Web. Saben si hay alguna función para mostrar matrices, es decir, si tengo: $agenda = array("domicilio" => "calle tal cual", "telefono" => $telefonos, "trabajo" => "empresa ...
  #1 (permalink)  
Antiguo 27/01/2011, 11:00
 
Fecha de Ingreso: enero-2011
Mensajes: 3
Antigüedad: 13 años, 2 meses
Puntos: 0
Funcion mostrar matriz

Saben si hay alguna función para mostrar matrices, es decir, si tengo:

$agenda = array("domicilio" => "calle tal cual",
"telefono" => $telefonos,
"trabajo" => "empresa tal cual");

$telefonos = array("t trabajo" => "7296489",
"t casa" => "5689524",
"t movil" => $moviles);

$moviles = array("m nextel" => "12345678",
"m telcel" => "987654321",
"m movistar"=> "6574839201");

que me de algo como:
domicilio...:calle tal cual
telefono...:
t trabajo...:7296489
t casa...:5689524
t movil...:
m nextel...:12345678
m telcel...:987654321
m movistar...:6574839201
trabajo...:empresa tal cual


o una funcion para comparar si el valor de un elemento es una array?....
  #2 (permalink)  
Antiguo 27/01/2011, 11:11
Avatar de odiseus  
Fecha de Ingreso: enero-2011
Mensajes: 109
Antigüedad: 13 años, 3 meses
Puntos: 3
Respuesta: Funcion mostrar matriz

Es un foreach normal y corriente.

Código PHP:
foreach($agenda as $etiqueta => $entrada)
{
   if(
is_array($entrada) {
       echo 
$etiqueta."<br>";
       foreach(
$entrada as $key => $valor) {
             echo 
$key ": " $valor."<br>";
       }
   } else {
       echo 
$etiqueta ": " $entrada."<br>";
   }

  #3 (permalink)  
Antiguo 27/01/2011, 11:16
 
Fecha de Ingreso: octubre-2009
Mensajes: 245
Antigüedad: 14 años, 6 meses
Puntos: 17
Respuesta: Funcion mostrar matriz

usa foreach para recorrer tu arreglo y obtener el par llave, valor. Para saber si una variable es arreglo usa is_array
__________________
Saludos.
  #4 (permalink)  
Antiguo 27/01/2011, 11:17
 
Fecha de Ingreso: enero-2011
Mensajes: 3
Antigüedad: 13 años, 2 meses
Puntos: 0
Respuesta: Funcion mostrar matriz

Gracias por responder tan rápido, ya lo había intentado con: if(is_array()) pero no me muestra nada:

domicilio: calle tal cual
telefono:
trabajo: empresa tal cual
  #5 (permalink)  
Antiguo 27/01/2011, 11:23
Avatar de Patriarka  
Fecha de Ingreso: enero-2011
Ubicación: Moreno, Buenos Aires, Argentina
Mensajes: 2.851
Antigüedad: 13 años, 2 meses
Puntos: 288
Respuesta: Funcion mostrar matriz

con esto ves todo lo quieres:

Código PHP:
Ver original
  1. $moviles = array("m nextel" => "12345678",
  2. "m telcel" => "987654321",
  3. "m movistar"=> "6574839201");
  4. $telefonos = array("t trabajo" => "7296489",
  5. "t casa" => "5689524",
  6. "t movil" => $moviles);
  7. $agenda = array("domicilio" => "calle tal cual",
  8. "telefono" => $telefonos,
  9. "trabajo" => "empresa tal cual");
  10. print_r($agenda);
  11. if(is_array($agenda)){
  12.     foreach ($agenda as $key => $value){
  13.         if(is_array($value)){
  14.             echo $key.' - '.' <br >';
  15.             foreach ($value as $key2 => $value2){
  16.                     if(is_array($value2)){
  17.                         echo $key2.' -  <br >';
  18.                         foreach ($value2 as $key3 => $value3){
  19.                             echo $key3.' - '.$value3.'<br >';
  20.                         }
  21.                     }else{
  22.                         echo $key2.' - '.$value2.' <br >';
  23.                     }
  24.                 }
  25.         }else{
  26.             echo $key.' - '.$value.' <br >';
  27.         }
  28.     }
  29. }
  #6 (permalink)  
Antiguo 27/01/2011, 11:45
 
Fecha de Ingreso: enero-2011
Mensajes: 3
Antigüedad: 13 años, 2 meses
Puntos: 0
Respuesta: Funcion mostrar matriz

Cita:
Iniciado por Patriarka Ver Mensaje
con esto ves todo lo quieres:

Código PHP:
Ver original
  1. $moviles = array("m nextel" => "12345678",
  2. "m telcel" => "987654321",
  3. "m movistar"=> "6574839201");
  4. $telefonos = array("t trabajo" => "7296489",
  5. "t casa" => "5689524",
  6. "t movil" => $moviles);
  7. $agenda = array("domicilio" => "calle tal cual",
  8. "telefono" => $telefonos,
  9. "trabajo" => "empresa tal cual");
  10. print_r($agenda);
  11. if(is_array($agenda)){
  12.     foreach ($agenda as $key => $value){
  13.         if(is_array($value)){
  14.             echo $key.' - '.' <br >';
  15.             foreach ($value as $key2 => $value2){
  16.                     if(is_array($value2)){
  17.                         echo $key2.' -  <br >';
  18.                         foreach ($value2 as $key3 => $value3){
  19.                             echo $key3.' - '.$value3.'<br >';
  20.                         }
  21.                     }else{
  22.                         echo $key2.' - '.$value2.' <br >';
  23.                     }
  24.                 }
  25.         }else{
  26.             echo $key.' - '.$value.' <br >';
  27.         }
  28.     }
  29. }

Sigue sin funcionar, note que no se obtiene un valor al comparar los $value en if(is_array()), al parecer es NULL, la salida que tengo es:


Array ( [domicilio] => calle tal cual [telefono] => [trabajo] => empresa tal cual )
domicilio - calle tal cual
telefono -
trabajo - empresa tal cual



Pero si a ustedes les funciona, entonces tendré algo mal en mi PHP???
  #7 (permalink)  
Antiguo 27/01/2011, 12:01
Colaborador
 
Fecha de Ingreso: mayo-2008
Ubicación: $MX['VZ']['Xalapa']
Mensajes: 3.005
Antigüedad: 15 años, 11 meses
Puntos: 528
Respuesta: Funcion mostrar matriz

para ver el contenido de una matriz, tenga lo que tenga, aunque sean valores vacios, puedes usar vardump o varexport

Etiquetas: funcion, matriz
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 10:56.