Ver Mensaje Individual
  #2 (permalink)  
Antiguo 09/02/2016, 11:38
julioquince
 
Fecha de Ingreso: febrero-2016
Mensajes: 2
Antigüedad: 10 años, 8 meses
Puntos: 0
Respuesta: Rellenar matriz de meses

Visto lo visto he decidido hacerlo con php. Dejo la función por si a alguien le sirve.

Código PHP:
function rellenarArray($fechaIni, $fechaFin, $datos) {
        
//print_r($datos);
        
$datosIni = explode("-", $fechaIni);
        
$datosFin = explode("-", $fechaFin);

        
//DATOS INICIO
        
$anoIni = $datosIni[0];
        
$mesIni = $datosIni[1];
        
$mesIni = ltrim($mesIni, "0");
        
//DATOS FIN
        
$anoFin = $datosFin[0];
        
$mesFin = $datosFin[1];
        
$mesFin = ltrim($mesFin, "0");
        
//RELLENO MESES
        //recorro años
        
$arrayMeses;
        for (
$i = $anoIni; $i <= $anoFin; $i++) {
            
//recorro meses y voy montando un array donde el primer indice es el año y el segundo el mes
            
if ($anoIni == $anoFin) {
                for (
$j = $mesIni; $j <= $mesFin; $j++) {
                    
$arrayMeses[$i][$j] = 0;
                }
            } else if (
$i == $anoIni) {
                for (
$j = $mesIni; $j <= 12; $j++) {
                    
$arrayMeses[$i][$j] = 0;
                }
            } else if (
$i == $anoFin) {
                for (
$j = 1; $j <= $mesFin; $j++) {
                    
$arrayMeses[$i][$j] = 0;
                }
            } else {
                for (
$j = 1; $j <= 12; $j++) {
                    
$arrayMeses[$i][$j] = 0;
                }
            }
        }
        if (
$datos) {
            foreach (
$datos as $i => $v) {
                
$arrayMeses[$v['anio']][ltrim($v['mes'], "0")] = $v['recuento_usuarios'];
            }
        }
        return 
$arrayMeses;
    }