Foros del Web » Programando para Internet » PHP »

Funciones para Arrays

Estas en el tema de Funciones para Arrays en el foro de PHP en Foros del Web. Hola, aca les dejo unas funciones para arrays. Cualquier comentario (bueno/malo) o mejora es bienvenido. Saludos. Código PHP:      /*** IN mixed (any value),OUT (bool)true/false, CHECK if can be used by foreach ***/     /*** Revisa si puede ser iterado con foreach ***/      function  canVarLoop ( ...
  #1 (permalink)  
Antiguo 25/09/2013, 17:44
 
Fecha de Ingreso: julio-2013
Ubicación: México
Mensajes: 361
Antigüedad: 10 años, 8 meses
Puntos: 55
Funciones para Arrays

Hola, aca les dejo unas funciones para arrays.
Cualquier comentario (bueno/malo) o mejora es bienvenido.
Saludos.

Código PHP:
    /*** IN mixed (any value),OUT (bool)true/false, CHECK if can be used by foreach ***/
    /*** Revisa si puede ser iterado con foreach ***/
    
function canVarLoop($input) {
        return (
is_array($input) || $input instanceof Traversable) ? true false;
    }
    
    
/*** IN mixed (any value),OUT (string)maxDepth ***/
    /*** Retorna la profundidad maxima de un array ***/
    
function getArrayMaxDepth($input){
        if( ! 
canVarLoop($input) ) { return "0"; }
        
$arrayiter = new RecursiveArrayIterator($input);
        
$iteriter = new RecursiveIteratorIterator($arrayiter);
        foreach (
$iteriter as $value) {
                
//getDepth() start is 0, I use 0 for not iterable values
                
$d $iteriter->getDepth() + 1;
                
$result[] = "$d";
        }
        return 
max$result );
    }

    
/*** IN mixed (any value), OUT (bool)true/false ***/
    /*** Revisa si es array con casting //maybe ¿useless?// Is faster ***/
    
function isArray($input){
        return ( (array)
$input === $input ) ? true false;
    }

    
/*** IN mixed (any value),OUT (bool)true/false, CHECK structure $var[]!='array' ¡¡NOT ACCEPT $var =='string' OR $var[]=='array'!! ***/
    /*** Revisa la estructura de array (util cuando recibes un array bien definido) ***/
    
function isValidFirstLevelArray($input){
        if( ! 
canVarLoop($input) ) { return false; }
        foreach(
$input as $value) {
            if( 
is_array($value) ){ return false; }
        }
        return 
true;
    }

    
/*** IN mixed (any value),OUT (bool)true/false, CHECK structure $var[][]!='array' ¡¡NOT ACCEPT $var[]=='string' OR $var[][]=='array'!! ***/
    /*** Revisa la estructura de array (util cuando recibes un array bien definido) ***/
    
function isValidSecondLevelArray($input){
        if( ! 
canVarLoop($input) ) { return false; }
        foreach(
$input as $value) {
            if( ! 
canVarLoop($value) ) { return false; }
            foreach(
$value as $value2) {
                if( 
canVarLoop($value2) ) { return false; }
            }
        }
        return 
true;
    } 

Última edición por Erick_MD9; 25/09/2013 a las 17:57

Etiquetas: arrays, funciones
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 12:05.