Dudo que el for funcione con fechas como cadena, es mejor si lo haces con timestamp, que es numérico:
Código PHP:
Ver original// Creas un array para los acumulados
// Llenas el array de acumulados, primero las claves
for($x = 1; $x <= 11; $x ++) {
$clave = ($x < 10) ? "0$x" : "$x";
$acums[$clave] = array(); // Luego las fechas: (86400 = 1 día)
for($i = $incio; $i <= $fin; $i += 86400) {
$fecha = date('Y-m-d', $i); $acums[$clave][$fecha] = 0;
}
}
// Ahora recorres los items para sumar en $acums
foreach($items as $item) {
// Estas variables son solo para que quede legible
$clave = $item['clave'];
$fecha = $item['fecha'];
// Incrementas el acumulado
$acums[$clave][$fecha] ++;
}
// Ya quedó más o menos lo que necesitas
No sé si necesites realmente tener todo en una variable o solo quieras mostrarlo; incluso, si estás obteniendo la información desde base de datos, seguramente puede simplificarse desde la consulta.
Sin embargo, con la poca información que proporcionas, es difícil sugerir algo mejor.