Ver Mensaje Individual
  #4 (permalink)  
Antiguo 10/12/2017, 00:20
Avatar de ArturoGallegos
ArturoGallegos
Moderador
 
Fecha de Ingreso: febrero-2008
Ubicación: Morelia, México
Mensajes: 6.774
Antigüedad: 16 años, 9 meses
Puntos: 1146
Respuesta: Cuantos lunes tiene un año

Hay perdonen si mi función es mas rudimentaria pero mi lógica me dice que yo lo haga asi :D

Código PHP:
Ver original
  1. <?php
  2. function count_day_in_year($year, $day = 1){
  3.     $total = 52;
  4.     $check = date('L', mktime(0,0,0,1,1, $year));
  5.    
  6.     if($check){
  7.         $n_days = date('t', mktime(0,0,0,12,1, $year));
  8.         $last_day =  date('N', mktime(0,0,0,12,$n_days, $year));
  9.        
  10.         $total = $day == $last_day ? 53 : 52;
  11.     }
  12.    
  13.     return $total;
  14. }
  15.  
  16. echo count_day_in_year(2020, 4);// en este año hay un jueves extra

Explico, si un año completo tiene 52 semanas por ende debe tener 52 lunes, 52 martes... etc.

Pero dado que cada 4 años hay año bisiesto, ese ultimo día del año esta de mas por lo que basta con comprobar si es o no año bisiesto y cual es ese día extra.

por lo que hice un check, si es bisiesto procedo a buscar ese día, caso contrario asumo y mando directo como respuesta 52 para cualquier día.