Ver Mensaje Individual
  #3 (permalink)  
Antiguo 15/02/2007, 08:30
Avatar de DeeR
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.