Tengo un problema, deseo imprimir en una tabla las fechas comprendidas entre 2 fechas ingresadas por un usuario, deben mostrarse todos los días, excepto sábado y domingo, y solamente mostrar el numero del día, por ejemplo fecha inicio = 03/08/2015, fecha termino = 12/08/2015, el resultado debería ser 03 - 04 - 05 - 06 - 07 - 10 - 11 - 12.
Tengo el codigo php que me ingresa los datos a un array
Código PHP:
<?php
$fechaInicio=strtotime("25-02-2008");
$fechaFin=strtotime("01-04-2008");
$semana=1;
/* avanzamos de a 1 dia; 1 dia ? 86400 segundos */
for($i=$fechaInicio; $i<=$fechaFin; $i+=86400){
/* obtenemos el dia de semana como numero; Domingo = 0, Lunes = 1... Sabado = 6 */
$diasemana = date( 'w', strtotime($i) );
/* solo agregamos los dias Lunes, Martes, Miercoles, Jueves y Viernes */
if( (1<= $diasemana)&&($diasemana <=5 ) ) {
/* obtenemos el calendario en formato numerico STR, [Semana] [Dia Semana] = Fecha */
$calendario[ $semana ][ $diasemana ] = $i;
}
/* imprimir fechas hacia abajo, en formato dia-mes-año */
echo date('d/m/Y',$calendario[$semana][$diasemana]). "<br>";
/* aumentamos la cantidad de semanas */
if($diasemana == 7){
$semana++;
}
}
?>
Código HTML:
<!DOCTYPE html> <html> <head> </head> <body> <table border="1"> <thead> <tr> <td>Lunes</td> <td>Martes</td> <td>Miércoles</td> <td>Jueves</td> <td>Viernes</td> </tr> </thead> <tbody> <?php for ($d=$fechaInicio; $d<=$fechaFin; $d+=86400): ?> <tr> <?php for ($s=1;$s<=5;$s++): ?> <td> <?php echo date('d/m/Y',$calendario[$d][$s]); ?> </td> <?php endfor; ?> </tr> <?php endfor; ?> </tbody> </table> </body> </html>