Foros del Web » Programando para Internet » PHP »

Sobre las fechas...

Estas en el tema de Sobre las fechas... en el foro de PHP en Foros del Web. Hola a todos... Necesito solventar una pregunta sobre las fechas. Quiero saber el mes anterior y el mes siguiente al actual, y esto lo logro ...
  #1 (permalink)  
Antiguo 06/11/2007, 08:45
 
Fecha de Ingreso: enero-2007
Mensajes: 158
Antigüedad: 17 años, 10 meses
Puntos: 2
Sobre las fechas...

Hola a todos...

Necesito solventar una pregunta sobre las fechas.

Quiero saber el mes anterior y el mes siguiente al actual, y esto lo logro mediante:

Código PHP:
$mes_actual date("m");
$mes_anterior date('F'mktime(000$mes_actual-1));
$mes_siguiente date('F'mktime(000$mes_actual+1));

echo 
"El mes pasado fue <b>$mes_anterior</b>
<br>
Estamos a <b>$mes_actual</b>
<br>
El mes que viene será <b>$mes_siguiente</b>"

Pero claro... el resultado que me da es el siguiente:

El mes pasado fue October
Estamos a November
El mes que viene será December

Alguien me puede ayudar a conseguir poner los meses en español?

Gracias de antemano. Un saludo
  #2 (permalink)  
Antiguo 06/11/2007, 09:02
Avatar de Seppo  
Fecha de Ingreso: marzo-2005
Ubicación: Buenos Aires, Argentina
Mensajes: 1.284
Antigüedad: 19 años, 8 meses
Puntos: 17
Re: Sobre las fechas...

Sí, usando setlocale y strftime

Código PHP:
<?php
setlocale
(LC_TIME'sp-Sp''es-Es''es''sp');
$mes_actual date("m"); 
$mes_anterior strftime('%B'mktime(000$mes_actual-1));
$mes_siguiente strftime('%B'mktime(000$mes_actual+1));

echo 
"El mes pasado fue <b>$mes_anterior</b>
<br>
Estamos a <b>$mes_actual</b>
<br>
El mes que viene será <b>$mes_siguiente</b>"
;
?>
  #3 (permalink)  
Antiguo 06/11/2007, 09:12
Avatar de ferbux  
Fecha de Ingreso: mayo-2007
Ubicación: por ahí intentado ayudar
Mensajes: 823
Antigüedad: 17 años, 6 meses
Puntos: 6
Re: Sobre las fechas...

Hola, lo ke puedes hacer es un switch mas o menos como este para cambiar los nombres a español ya ke date("m") te da el nombre en inglés.

Código:
$mes_actual = date("m"); 
$mes_anterior = date('F', mktime(0, 0, 0, $mes_actual-1)); 
$mes_siguiente = date('F', mktime(0, 0, 0, $mes_actual+1)); 
$neim_mes=$mes_actual;
 switch($neim_mes){
     CASE $neim_mes=="January": $neim_mes="Enero";
                                        break;
	 CASE $neim_mes=="February": $neim_mes="Febrero";
	                       break;
	 CASE $neim_mes=="March": $neim_mes="Marzo";
	                       break;
     CASE $neim_mes=="April": $neim_mes="Abril";
	                       break;  
      ...
      ...
      .......


}
 switch($mes_anterior){
     CASE $mes_anterior=="January": $mes_anterior="Enero";
                                        break;
	 CASE $mes_anterior=="February": $mes_anterior="Febrero";
	                       break;
	 CASE $mes_anterior=="March": $mes_anterior="Marzo";
	                       break;
     CASE $mes_anterior=="April": $mes_anterior="Abril";
	                       break;  
      ...
      ...
      .......
}
Lo mismo haces con el mes siguiente, bueno ojala te ayude un poco.

salu2
__________________
"Eres grande por que caminas entre gigantes"
  #4 (permalink)  
Antiguo 06/11/2007, 16:40
 
Fecha de Ingreso: enero-2007
Mensajes: 158
Antigüedad: 17 años, 10 meses
Puntos: 2
Re: Sobre las fechas...

Gracias ferbux. Al final he utilizado lo que me ha dicho Seppo.

Muchas gracias a los dos por vuestra ayuda.

Un saludo
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 12:54.