Foros del Web » Programando para Internet » PHP »

Problemas con funcion date

Estas en el tema de Problemas con funcion date en el foro de PHP en Foros del Web. Tengo el siguiente código. Código PHP: $desdeTS  =  strtotime ( $anio . "-" . $mes . "-01" ); $dPosSemana  =  date  ( "w" ,  $desdeTS ...
  #1 (permalink)  
Antiguo 01/12/2009, 09:55
 
Fecha de Ingreso: agosto-2003
Mensajes: 203
Antigüedad: 20 años, 7 meses
Puntos: 0
Problemas con funcion date

Tengo el siguiente código.
Código PHP:
$desdeTS strtotime($anio."-".$mes."-01");
$dPosSemana date ("w"$desdeTS);
$dSemana date ("W"$desdeTS); 
cuando $anio = 2009 y $mes = 1, me devuelve $dSemana = 1, pero para $anio = 2010 y $mes = 1, me devuelve $dSemana = 53, por lo que el calendario que armo falla, necesitaría saber como puedo solucionar esto sin tener que poner una excepción a mano dado que con solo poner $dSemana = 1 el calendario no lo arma bien.

Muchas gracias.
  #2 (permalink)  
Antiguo 01/12/2009, 10:25
Avatar de dggluz  
Fecha de Ingreso: abril-2009
Ubicación: Buenos Aires, Argentina
Mensajes: 525
Antigüedad: 14 años, 10 meses
Puntos: 50
Respuesta: Problemas con funcion date

La verdad que es muy extraño... siendo que los años tienen 52 semanas. La verdad que no se me ocurre por qué ocurre eso (¿será un bug?). Has algunas pruebas más (enero 2011, 2012, etc.) y cuéntanos qué resultados obtienes. De todos modos, una solución (chapucera, desde luego) sería hacer un módulo respecto de 52. ¡Suerte!
  #3 (permalink)  
Antiguo 01/12/2009, 10:58
 
Fecha de Ingreso: agosto-2003
Mensajes: 203
Antigüedad: 20 años, 7 meses
Puntos: 0
Respuesta: Problemas con funcion date

Probé otros años y los problema esta cuando el primero de enero es viernes, sábado o domingo, que siempre muestra como semana inicial la 53.
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 15:44.