Foros del Web » Programando para Internet » PHP »

Formato de fecha

Estas en el tema de Formato de fecha en el foro de PHP en Foros del Web. Holas... tengo una fecha que viene de la base de datos en el formato aaaa/mm/dd y necesito que se vea asi. por ejemplo 2005/03/01 que ...
  #1 (permalink)  
Antiguo 10/03/2005, 15:44
 
Fecha de Ingreso: julio-2002
Mensajes: 119
Antigüedad: 21 años, 8 meses
Puntos: 0
Formato de fecha

Holas... tengo una fecha que viene de la base de datos en el formato aaaa/mm/dd y necesito que se vea asi.

por ejemplo

2005/03/01 que se vea 01 de marzo de 2005

pude hacer que el mes se vea en ingles.. pero necesito que se vea en español.. como lo hago???
  #2 (permalink)  
Antiguo 10/03/2005, 18:19
Avatar de phpec  
Fecha de Ingreso: noviembre-2004
Mensajes: 70
Antigüedad: 19 años, 5 meses
Puntos: 0
desde el query

puedes hacerlo desde el query

SELECT CONCAT( DAYOFMONTH(fecha), ' de ', CASE MONTH(fecha)
WHEN 1 THEN 'Enero'
WHEN 2 THEN 'Febero'
WHEN 3 THEN 'Marzo'
WHEN 4 THEN 'Abril'
WHEN 5 THEN 'Mayo'
WHEN 6 THEN 'Junio'
WHEN 7 THEN 'Julio'
WHEN 8 THEN 'Agosto'
WHEN 9 THEN 'Setiembre'
WHEN 10 THEN 'Octubre'
WHEN 11 THEN 'Noviembre'
WHEN 12 THEN 'Diciembre'
END,
' de ',
YEAR(fecha)) AS fecha
FROM nombre_tabla;
  #3 (permalink)  
Antiguo 10/03/2005, 20:20
 
Fecha de Ingreso: julio-2003
Ubicación: Colombia
Mensajes: 591
Antigüedad: 20 años, 9 meses
Puntos: 7
como lo dice phpec o esta version en php...
Chaop!

Código PHP:
<?php 
$fecha 
"2005/03/01";
echo 
$fecha;
list(
$ano$mes$dia) = split('[/]'$fecha);
switch(
$mes)
{
case 
01 $mes="Enero";
break;
case 
02 $mes="Febrero";
break;
case 
03 $mes="Marzo";
break;
case 
04 $mes="Abril";
break;
case 
05 $mes="Mayo";
break;
case 
06 $mes="Junio";
break;
case 
07 $mes="Julio";
break;
case 
08 $mes="Agosto";
break;
case 
09 $mes="Septiembre";
break;
case 
10 $mes="Octubre";
break;
case 
11 $mes="Noviembre";
break;
case 
12 $mes="Diciembre";
break;
}
echo 
"<br>";
echo 
"$dia de $mes de $ano"
?>
  #4 (permalink)  
Antiguo 10/03/2005, 20:27
Avatar de jam1138
/** @package Moderador */
 
Fecha de Ingreso: julio-2004
Ubicación: sèveR led onieR lE
Mensajes: 9.368
Antigüedad: 19 años, 8 meses
Puntos: 102
ó con un arreglo también es posible...
Código PHP:
$meses= ("""Enero""Febrero""Marzo", ....);
echo 
$meses['mes']; 
Obviamente no está el código para que funcione... solo la idea. Sería similar a lo que propone luchope, recuperas el número de mes, y lo mandas a imprimir por el arreglo... a mi parecer un código más limpio....

__________________
٩(͡๏̯͡๏)۶
» Cómo hacer preguntas de manera inteligente «

"100 años después, la revolución no es con armas, es intelectual y digital"
  #5 (permalink)  
Antiguo 11/03/2005, 08:55
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Cita:
Iniciado por drenis
Holas... tengo una fecha que viene de la base de datos en el formato aaaa/mm/dd y necesito que se vea asi.

por ejemplo

2005/03/01 que se vea 01 de marzo de 2005

pude hacer que el mes se vea en ingles.. pero necesito que se vea en español.. como lo hago???
Deberías concretar que Base de datos estás usando .. en principío por qué la solución como veras puede ser desde SQL directo .. o vía PHP ..

La solución SQL directo puede ser algo engorrosa hacerlo en muchas consultas SQL y si hay várias fechas por ahí que trabajar .. Se podría solventar colocando ese SQL como un "store procedure" (si es que tu BD lo soporta .. Mysql por ejemplo hasta la versión 4.1 no lo soporta .. pero si MS SQL Server, Oracle .. PostgreSQL .. etc).

La solución "PHP" digamos que es más genérica .. pero se carga a PHP con un proceso que perfectamente podría hacer tu BD en su SQL.

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 07:39.