Re: [PHP-ES] Formatear fecha.
[email protected] (Juan Manuel Acuña Barrera)
| Newsgroups | php.general.es |
|---|---|
| Message-ID | <[email protected]> |
El 03/12/2010, a las 06:07, Pablo Braulio escribió:
> Hola a todos.
>
> Tengo un string con datos de una fecha y quiero formatearlo para ver 2 de diciembre de 2010.
>
> Esto es lo que he conseguido
>
> $fechasrc= '2010-12-02 00:00:00.0';
>
> $fecha= new DateTime($fechasrc);
>
> echo $fecha->format('d-F-Y');
>
> Eso me muestra 02-December-2010.
>
> ¿Como podría tracudir el mes?.
>
> Gracias.
> --
> Saludos cordiales.
> Pablo.
>
> Si lo reenvías, ten la precaución de borrar los datos de procedencia que encabezarían tu reenvío – empezando por mi dirección de correo electrónico - . Coloca siempre las direcciones de tus contactos en el campo <CCO> para que viajen discretas, no en el campo <Para> ni en el<CC>. De esa forma nadie que lo reciba tendrá constancia de las señas de los demás destinatarios a los que también se remite. Todo ello a fin de evitar que nadie se aproveche de todas las direcciones que se van acumulando al pasar de buzón a buzón para el lanzamiento de correo basura y otras indeseadas lindezas. Aparte claro está de garantizar la privacidad.
>
>
>
> Gracias.
>
> --
> PHP Spanish Localization Talk Mailing List (http://www.php.net/)
> To unsubscribe, visit: http://www.php.net/unsub.php
>
Hola.
Yo uso lo siguiente:
function fechaFormat($fecha) {
$ano=substr($fecha, 0 ,4);
$mes=nombreMes(substr($fecha, 5 ,2));
$dia=substr($fecha, 8 ,2);
$resultado="$dia de $mes del año $ano";
return $resultado;
} // fechaFormat
function nombreMes($noMes) {
global $nombresMeses;
return ucFirst($nombresMeses[$noMes+0]);
} // nombreMes
$nombresMeses=array(1=>"enero",2=>"febrero",3=>"marzo",4=>"abril",5=>"mayo",6=>"junio",7=>"julio",8=>"agosto",9=>"septiembre",10=>"octubre",11=>"noviembre",12=>"diciembre");
Obviamente, en la función fechaFormat puedes modificar el $resultado para que se adapte a lo que necesitas/quieres.
Como ejemplo, lo usaría así:
$fechasrc= '2010-12-02 00:00:00.0';
$fechaFormateada= fechaFormat($fechasrc);
//y $fechaFormateada debería regresar algo como "2 de Diciembre de 2012"
Espero que te sirva.
Saludos!