Foros del Web » Programando para Internet » PHP »

problema de fechas

Estas en el tema de problema de fechas en el foro de PHP en Foros del Web. tengo es escrito en el cual me funciona y le pongo las fechas y me saca perfectame el limite del mes, pero no entiendo esto ...
  #1 (permalink)  
Antiguo 14/04/2013, 17:03
Avatar de jor_0203  
Fecha de Ingreso: octubre-2011
Ubicación: mexico
Mensajes: 760
Antigüedad: 12 años, 6 meses
Puntos: 8
problema de fechas

tengo es escrito en el cual me funciona y le pongo las fechas y me saca perfectame
el limite del mes, pero no entiendo esto que esta en el if ((($anio % 4 == 0) && !($anio % 100 == 0)) || $anio % 400 == 0)
porque entre 4 y después entre 100 y después debe ser cero



Código PHP:
Ver original
  1. <?php
  2. //preguntar tres cosas  
  3. //1-como saber que mes de febrero es de 28 o 29 meses
  4. //2-como saber si es 30 o 31 de cada mes  
  5.  
  6. $numeroDias = 0;
  7.  
  8. $mes = 2;       // Obtiene el número del mes ingresado entre 1 y 12
  9. $anio = 2013;
  10. switch ($mes)
  11. {
  12.      case 1:
  13.      case 3:
  14.      case 5:
  15.      case 7:
  16.      case 8:      
  17.      case 10:
  18.      case 12:
  19.      $numeroDias = 31;
  20.      break;
  21.      case 4:
  22.      case 6:
  23.      case 9:
  24.      case 11:
  25.      $numeroDias = 30;
  26.      break;
  27.      case 2:
  28.              if ((($anio % 4 == 0) && !($anio % 100 == 0)) || $anio % 400 == 0)
  29.              {
  30.               $numeroDias = 29;
  31.              }
  32.              else
  33.              {
  34.               $numeroDias = 28;
  35.              }
  36. }
  37. // Desplegar el resultado en pantalla
  38. echo $numeroDias . " dias";
  39. ?>
  #2 (permalink)  
Antiguo 14/04/2013, 17:25
Avatar de andresdzphp
Colaborador
 
Fecha de Ingreso: julio-2011
Ubicación: $this->Colombia;
Mensajes: 2.749
Antigüedad: 12 años, 9 meses
Puntos: 793
Respuesta: problema de fechas

No se necesita dar tanta vuelta para saber el número de días que tiene cada mes. Algo básico como esto, da los días que tiene los 12 meses del año 2013:

Código PHP:
Ver original
  1. for ($i=1; $i<=12; $i++) {
  2.     echo date('t', strtotime("2013-$i-01")) . '<br />';
  3. }
__________________
Si sabemos como leer e interpretar el manual será mucho más fácil aprender PHP. En lugar de confiar en ejemplos o copiar y pegar - PHP
  #3 (permalink)  
Antiguo 14/04/2013, 17:29
Avatar de jor_0203  
Fecha de Ingreso: octubre-2011
Ubicación: mexico
Mensajes: 760
Antigüedad: 12 años, 6 meses
Puntos: 8
Respuesta: problema de fechas

Cita:
Iniciado por andresdzphp Ver Mensaje
No se necesita dar tanta vuelta para saber el número de días que tiene cada mes. Algo básico como esto, da los días que tiene los 12 meses del año 2013:

Código PHP:
Ver original
  1. for ($i=1; $i<=12; $i++) {
  2.     echo date('t', strtotime("2013-$i-01")) . '<br />';
  3. }
esto es para cualquier año hasta el bisiesto
  #4 (permalink)  
Antiguo 14/04/2013, 17:33
Avatar de andresdzphp
Colaborador
 
Fecha de Ingreso: julio-2011
Ubicación: $this->Colombia;
Mensajes: 2.749
Antigüedad: 12 años, 9 meses
Puntos: 793
Respuesta: problema de fechas

Prueba con el año 2012 por ejemplo
__________________
Si sabemos como leer e interpretar el manual será mucho más fácil aprender PHP. En lugar de confiar en ejemplos o copiar y pegar - PHP
  #5 (permalink)  
Antiguo 14/04/2013, 17:44
Avatar de jor_0203  
Fecha de Ingreso: octubre-2011
Ubicación: mexico
Mensajes: 760
Antigüedad: 12 años, 6 meses
Puntos: 8
Respuesta: problema de fechas

Cita:
Iniciado por andresdzphp Ver Mensaje
Prueba con el año 2012 por ejemplo
que hermoso esta esto gracias
pero una pregunta mas, disculpa

también puedo imprimir los días dependiendo el mes
  #6 (permalink)  
Antiguo 14/04/2013, 17:46
Avatar de andresdzphp
Colaborador
 
Fecha de Ingreso: julio-2011
Ubicación: $this->Colombia;
Mensajes: 2.749
Antigüedad: 12 años, 9 meses
Puntos: 793
Respuesta: problema de fechas

Si obvio:

Código PHP:
Ver original
  1. <?php
  2.  
  3. $mes = 02;
  4. $anio = 2040;
  5. $dt = new DateTime("$anio-$mes-01");
  6. echo 'días: ' . $dt->format('t');
__________________
Si sabemos como leer e interpretar el manual será mucho más fácil aprender PHP. En lugar de confiar en ejemplos o copiar y pegar - PHP

Etiquetas: Ninguno
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 17:42.