2010-11-26 5 views
0

Besoin d'aide dans la conversion Date:conversion de format de date PHP

format de la date actuelle:

Wed, 01 Dec 2010 00:00:00 -0500

(Day, DD MMM YYYY HH:MM:SS GMT-0500)

être changé pour:

2010-11-29T04:59:59-05:00

(YYYY-MM-DD(T)HH:MM:SS GMT-05:00)

Comment gérer en PHP?

est là une fonction disponible en php pour cela.

s'il vous plaît aider

+0

Pourquoi pas seulement timestamp stocker et de le convertir au format date ultérieure? – Shoe

+2

duplication possible de [PHP convertir une date dans un autre format de date] (http://stackoverflow.com/questions/2167916/php-convert-one-date-into-another-date-format) –

Répondre

2

strtotime() (man page) & date() (man page) ou classe DateTime (man page) devrait être en mesure de gérer cela.

echo date('Y-m-d\TH:i:sZ', strtotime('Wed, 01 Dec 2010 00:00:00 -0500')); 
echo date('c', strtotime('Wed, 01 Dec 2010 00:00:00 -0500')); // as mentioned by Anthony 

ou

echo DateTime('Wed, 01 Dec 2010 00:00:00 -0500')->format('Y-m-d\TH:i:sZ'); 
echo DateTime('Wed, 01 Dec 2010 00:00:00 -0500')->format('c'); // as mentioned by Anthony 
+0

Merci beaucoup pour votre aide . – gourav

1

D'abord, vous voulez que la chaîne de date au format de l'époque, de sorte que vous pouvez utiliser la fonction date. Ma méthode préférée pour ce faire est la fonction strtotime:

$epoch_date = strtotime($original_date_string); 

Maintenant, vous pouvez utiliser la fonction date pour le sortir comme bon vous semble. Dans votre cas, je crois que vous êtes à la recherche de l'ISO 8601, qui est intégré dans la fonction:

$new_date_string = date('c', $epoch_date); 
echo $new_date_string; 
+0

Merci pour votre réponse. Je ne cherche pas ISO 8601. pouvez-vous s'il vous plaît expliquer plus à ce sujet. – gourav

+1

@gourav le format que vous affichez est ISO 8601 –

+0

La page de manuel de date contient une liste de tous les formats possibles pour la sortie. La réponse de Treffynnon a la sortie formatée complète: 'Ymd \ TH: i: sZ' – Anthony