ElTicus.com

Programación, lenguajes y recursos para programadores

Recurso no clasificado
Como imprimir la fecha en español utilizando PHP aunque el idioma del servidor sea el inglés.
Segmento de código
Publicado por JL Fecha: 2006-12-11 18:41:00 Idioma: Español Tipo de documento:

Imprimir la fecha en español utilizando PHP aunque el idioma del servidor sea el inglés.

Se trata de una función muy sencilla, pero que resulta extremadamente util, ya que si simplemente utilizamos una de las funciones de formateo de fechas, nos arriesgamos a encontrarnos con una sentencia como:

Monday, 12 de january de 2006

La función que convierte una fecha a formato legible en español es la siguiente:

 /*************************************
 Devuelve una cadena con la fecha que se 
 le manda como parámetro en formato largo.
 *************************************/

function FechaFormateada($FechaStamp){
$ano = date('Y',$FechaStamp); //<-- Año
$mes = date('m',$FechaStamp); //<-- número de mes (01-31)
$dia = date('d',$FechaStamp); //<-- Día del mes (1-31)
$dialetra = date('w',$FechaStamp);  //Día de la semana(0-7)
switch($dialetra){
case 0: $dialetra="Domingo"; break;
case 1: $dialetra="Lunes"; break;
case 2: $dialetra="Martes"; break;
case 3: $dialetra="Miércoles"; break;
case 4: $dialetra="Jueves"; break;
case 5: $dialetra="Viernes"; break;
case 6: $dialetra="Sábado"; break;
}
switch($mes) {
case '01': $mesletra="Enero"; break;
case '02': $mesletra="Febrero"; break;
case '03': $mesletra="Marzo"; break;
case '04': $mesletra="Abril"; break;
case '05': $mesletra="Mayo"; break;
case '06': $mesletra="Junio"; break;
case '07': $mesletra="Julio"; break;
case '08': $mesletra="Agosto"; break;
case '09': $mesletra="Septiembre"; break;
case '10': $mesletra="Octubre"; break;
case '11': $mesletra="Noviembre"; break;
case '12': $mesletra="Diciembre"; break;
}    
return "$dialetra, $dia de $mesletra de $ano";
}

Para utilizar la función, se le manda una fecha como parámetro, por ejemplo, si se quisiera imprimir la fecha actual, utilizaríamos el siguiente código:

  $fecha = time();
  echo FechaFormateada($fecha);

El resultado en pantalla sería el siguiente:

Lunes, 11 de diciembre de 2006


La función también se puede implementar utilizando arrays y en ese caso quedaría con menos líneas de código.




Nadie ha puesto ningún comentario todavía


Haz un comentario sobre este tema
Nombre email (no se muestra)
comentario:
Escribe las 2 letras que ves aquí: Imagen anti-spam =




No hay comentarios

Artículos relacionados:
Tip Como corregir la fecha de mi servidor si éste se encuentra en un uso horario diferente al mio Código fuente Para imprimir la fecha en español utilizando PHP independientemente del lenguaje del servidor (Utilizando ARRAYS) Código fuente Como convertir una fecha de Lenguaje Natural a tipo DATE