Bonjour,
j'ai cherché beaucoup de solutions pour convertir une date dans un format donné en un autre, mais je n'arrive pas à trouver la bonne méthode.
Comment convertir une date "2018-04-10 00:00:00" en "Tue, 10 Apr 2018 01:00:00 +0200" ?
Cela donne :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 use Time::Local; $madate = "2018-03-27 00:00:00"; my ($year,$mon,$mday,$hour,$min,$sec) = split(/[\s-:]+/, $madate); my $time = timelocal($sec,$min,$hour,$mday,$mon-1,$year); $newdate = scalar localtime $time; print "new date = $newdate\n";
Il manque la virgule que j'aimerai pas devoir insérer "après le 1er espace" {beurk}
Code : Sélectionner tout - Visualiser dans une fenêtre à part new date = Tue Mar 27 00:00:00 2018
L'année ne s'est pas bien placée, et il manque le fuseau horaire...
Oui, je pourrais déplacer l'année au bon endroit et ajouter la virgule avec des regex, mais il se peut qu'il existe une fonction qui écrive cela proprement ?
Merci par avance.
Partager