Foros del Web » Programando para Internet » PHP »

duda con array

Estas en el tema de duda con array en el foro de PHP en Foros del Web. Hola, prometo que he búscado pero no encuentro la función en php para saber el número de filas y columnas de un array. Tengo un ...
  #1 (permalink)  
Antiguo 15/02/2007, 07:54
 
Fecha de Ingreso: junio-2006
Mensajes: 17
Antigüedad: 17 años, 10 meses
Puntos: 0
duda con array

Hola,
prometo que he búscado pero no encuentro la función en php para saber el número de filas y columnas de un array.

Tengo un array $resultado y quiero saber eso, el número de columnas y filas que tiene.
He visto count() que me devuelve las filas, es asi? Pero las columas?

Muchas gracias
  #2 (permalink)  
Antiguo 15/02/2007, 08:18
 
Fecha de Ingreso: octubre-2004
Mensajes: 751
Antigüedad: 19 años, 6 meses
Puntos: 4
Re: duda con array

count($array); te devolverá el número de filas (o columnas según lo mires).

Luego por cada fila o columna haces count($array[1]); y te devolverá el número de filas o columnas de la fila o columna escogida.

Saludos,
__________________
sergiold
  #3 (permalink)  
Antiguo 15/02/2007, 08:30
Avatar de DeeR  
Fecha de Ingreso: diciembre-2003
Ubicación: Santiago
Mensajes: 520
Antigüedad: 20 años, 4 meses
Puntos: 17
Re: duda con array

Aqui te facilito una funcion simple (by deer :P)que resuelve lo necesitado.

Datos de Entrada
- el Array
- Variable $columna pasada por referencia (aqui se graba el dato)
- Variable $filas pasada por referencia (aqui se graba el dato)

Datos de Salida
Si el array es rectangular por decir, osea siempre tiene la misma cantidad de columnas, devuelve True, Falso en caso contrario , (los datos filas y columna se graban en las variables pasadas por referencia).

Código PHP:
<?
// Array Numero de Filas y Columnas
// http://deerme.org

function filas_columnas($array,&$columnas,&$filas)
{
    
// Datos de Entrada
    // Array a Revisar y las Variables columnas y filas que se van a pasar por referencia  
    
$filas=count($array);
    
    for (
$i=0;$i<count($array);$i++)
    {    
          
$j=0;
        foreach ( 
$array[$i] as $valor)
        {
             
$j++; 
        }  
        
        if (
$i == 0)
        {
              
$columnas=$j;
        }
        else
        {
             if ( 
$columnas != $j  )
            {
               
// No tienen la misma cantidad de Columnas
               // Devolvemos False
               
return FALSE;
            } 
          
        }
        
    }    
      return 
TRUE;
      
      
   
// Datos de Salida
   // devuelve True si siempre tiene la misma cantidad de columnas
   // falso en caso contrario
}


$array[0][0]=12;
$array[0][1]=13;
$array[0][2]=16;
$array[1][0]=132;
$array[1][1]=2131;
$array[1][2]=136;


if ( 
filas_columnas($array,$c,$f)  )
{
  echo 
' La Matriz es Rectangular ';
  echo 
' Filas : '.$f.' Columnas : '.$c.'';
}
else
{
  echo 
' La Matriz no es Rectangular';
}


?>
Saludos

PD: La solucion de sergiold es muxo mas eficaz,pero esta func la tenia escrita hace ene tiempo y la he usado cuando la necesitaba xD.
  #4 (permalink)  
Antiguo 16/02/2007, 01:47
 
Fecha de Ingreso: junio-2006
Mensajes: 17
Antigüedad: 17 años, 10 meses
Puntos: 0
Re: duda con array

gracias ya lo tengo claro.
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 03:59.