Bonjour à tous,
On sait calculer le nombre de secondes écoulées depuis 1/1/70.
Quelqu'un connait-il la fonction qui permet de transformer ce nombre de secondes en date?
Merci d'avance
;)
Version imprimable
Bonjour à tous,
On sait calculer le nombre de secondes écoulées depuis 1/1/70.
Quelqu'un connait-il la fonction qui permet de transformer ce nombre de secondes en date?
Merci d'avance
;)
Citation:
Envoyé par devjcc
Bon courage ;)Code:($sec,$min,$heure,$mjour,$mois,$annee,$sjour,$ajour,$isdst) = gmtime(time);
Merci, mais ceci est valable pour la date en cours.Citation:
Envoyé par 2Eurocents
Là de dessus pas de problème.
:oops: Comment fait-on pour obtenir une date à partir de n'importe quelle variable 'seconde'. Ex: 1190292727 doit donner 2007-09-20. ?
Merci
Utilisation du module Time::local:
http://perldoc.perl.org/Time/Local.html
Code:
1
2
3
4
5 use Time::Local 'timelocal_nocheck'; # the 10,000,000th second since 1970! print scalar localtime timelocal_nocheck 10000000,0,0,1,0,70;
Bah ... il suffit de remplacer "time" par 1190292727.Citation:
Envoyé par devjcc
Attention, il faut ajouter 1900 à la variable $annee et 1 à la variable $mois pour que leurs valeurs soient exploitables.
La mise en forme finale est de ton ressort. ;)
Sinon, il y a toutes les solutions passant par des modules, dont DateTime::Format::Epoch, par exemple ...
Bon courage.
En fait, je viens de trouver la solution sans utiliser de lib supplémentaire.
Il suffit de recréer un tableau
et de faire l'extraction habituelle des éléments de date.Code:@date=gmtime($NombreDeSeconde);
Merci
ok, sinon Time::Local fait partie du Core, autrement dit il est installé d'office avec Perl, donc pas besoin d'installer quoi que ce soit ;)