Foros del Web » Programando para Internet » PHP »

Numero de Dias por mes!

Estas en el tema de Numero de Dias por mes! en el foro de PHP en Foros del Web. hola, alguien me podria explicar como puedo saber los dias que tiene cada mes en un año, sin tener que programarlo manualmente? alguna funcion o ...
  #1 (permalink)  
Antiguo 05/08/2004, 14:53
Avatar de ramzax200  
Fecha de Ingreso: noviembre-2003
Mensajes: 172
Antigüedad: 20 años, 5 meses
Puntos: 0
Numero de Dias por mes!

hola, alguien me podria explicar como puedo saber los dias que tiene cada mes en un año, sin tener que programarlo manualmente? alguna funcion o algo? o a fuerza tendre que poner $enero=31 ;$febrero=28 etc etc ???
  #2 (permalink)  
Antiguo 05/08/2004, 15:19
 
Fecha de Ingreso: septiembre-2003
Mensajes: 248
Antigüedad: 20 años, 7 meses
Puntos: 2
Hola, mira:
$lastday=mktime(0,0,0,3,0,2000);
echo strftime("Last day in Feb 2000 is: %d",$lastday);
sacado de:
http://www.php.net/manual/es/function.mktime.php
__________________
Jose A
  #3 (permalink)  
Antiguo 05/08/2004, 22:28
Avatar de execon  
Fecha de Ingreso: enero-2002
Ubicación: Temuco
Mensajes: 179
Antigüedad: 22 años, 2 meses
Puntos: 0
De acuerdo

Tal vez te sirva éste calendario para ello.

Código PHP:
<style type="text/css">
<!--
.diassemana {
    font-family: Verdana, Arial, Helvetica, sans-serif;
    font-size: 7pt;
    text-decoration: none;
}
-->
</style>
<body bgcolor="#FFFFFF">
<?
# o--------------------------------------------------------------------------o
#  Funcion que despliega la fecha en formato de texto
#  Ejemplo Lunes, Octubre 22 de 2001
#  Creada por Exequiel Contreras Luna
#  Contáctame en : [email][email protected][/email]
#  Libre distribución, siempre que no se borre la nota de Creditos al autor.
# o--------------------------------------------------------------------------o
  
 
$dayarray=array("Domingo","Lunes","Martes","Miercoles","Jueves","Viernes","Sábado","Domingo");
 
$montharray=array("Enero","Febrero","Marzo","Abril","Mayo","Junio","Julio","Agosto","Septiembre","Octubre","Noviembre","Diciembre");
 
$diasemanadate("w");
 
$diamesdate("d");
 
$mesdate("m");
 
$mesantdate("m")-1;
 
$anodate("Y");
 
$diasdelmes=date("t");
 
$diamesant=date($mesant);
 
 
// en ésta variable se almacena la fecha en modo de texto, se puede mostrar usando un echo o print o lo ke kieran.
 
$lafecha=$dayarray[$diasemana].", ".$montharray[$mes-1]." ".$diames." de ".$ano
 
// se puede alterar el orden si lo deseas
 
$festenero=array(1);
 
$festfebrero=array();
 
$festmarzo=array();
 
$festabril=array(18,19);
 
$festmayo=array(1,21);
 
$festjunio=array(16);
 
$festjulio=array();
 
$festagosto=array(15);
 
$festsept=array(18,19);
 
$festoct=array();
 
$festnov=array(1);
 
$festdic=array(8,25);
 
 
 
 
$festivos=array(18,19); // escoge los días festivos de acuerdo a tu país, tb puedes incluir Domingos y sábados
 
 
$totalfestivos=count($festivos); // Cantidad de días festivos

 // calcula el inicio del mes actual
 
$diasatras=$diames;
 
 
$arraymesfull=array(42);
 
$arraymesfull[$diames]=$dayarray[$diasemana];
 
 
$i=$diames;
 
$decdiasemana=$diasemana;
 while (
$i>=0)
  {
    
$empiezaen=$decdiasemana+1;
    
$i=$i-1;
    if (
$decdiasemana==0)
     {
      
$decdiasemana=6;
     }
    else
     {
      
$decdiasemana=$decdiasemana-1;
     } 

  }
     
 for (
$i=0;$i<=42;$i++)
  { 
    
$arraymesfull[$i]=" ";
  }

$i=0;
$j=1;
 for (
$i=$empiezaen;$j<=$diasdelmes;$i++)
  { 
    
$arraymesfull[$i]=$j;
    
$j++;
  }
?>
<span class="diassemana"><i><?=$lafecha?></i></span> 
<table border="1" cellspacing="0" cellpadding="0" bordercolor="#000000">
  <tr>
    <td>
      <table border="0" cellspacing="1" cellpadding="0">
        <tr class="diassemana"> 
          <td colspan="7"> <div align="center"><font size="1"><b><font face="Trebuchet MS, Tahoma"> 
              <? echo $montharray[$mes-1]; ?> </font></b></font></div></td>
        </tr>
        <tr class="diassemana"> 
          <td width="20" bgcolor="#000000"> <div align="center"><font color="#FFFFCC">D</font></div></td>
          <td width="20" bgcolor="#000000"> <div align="center"><font color="#FFFFCC">L</font></div></td>
          <td width="20" bgcolor="#000000"> <div align="center"><font color="#FFFFCC">M</font></div></td>
          <td width="20" bgcolor="#000000"> <div align="center"><font color="#FFFFCC">M</font></div></td>
          <td width="20" bgcolor="#000000"> <div align="center"><font color="#FFFFCC">J</font></div></td>
          <td width="20" bgcolor="#000000"> <div align="center"><font color="#FFFFCC">V</font></div></td>
          <td width="20" bgcolor="#000000"> <div align="center"><font color="#FFFFCC">S</font></div></td>
        </tr>
        <tr> 
          <? 
$j
=0;
for (
$i=0;$i<=42;$i++)
{
$verfest=0;
$bcolor="#E8E8E8"$fcolor="#000000";
if (
$diames==$arraymesfull[$i]) { $bcolor="#000000"$fcolor="#FFFFFF"; }
for (
$verfest==0;$verfest<$totalfestivos;$verfest++) {
if (
$arraymesfull[$i]==$festivos[$verfest]) { $bcolor="#E8E8E8"$fcolor="#CC0000"; }
}
?>
          <td width="20" align="center" bgcolor=<? echo $bcolor ?> class="diassemana" ><font  color=<? echo $fcolor?>
            <? echo $arraymesfull[$i]; ?> </font></td>
          <?     
if ($j==6) {$j=0?>
        </tr>
        <tr> 
          <? 
 else {
$j=$j+1;}
?>
      </table>
      
    </td>
  </tr>
</table>
__________________
----------------------------------
APP Developer
[email protected]
----------------------------------
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 09:06.