comparer deux dates en perl

comparer deux dates en perl - Perl - Programmation

Marsh Posté le 25-04-2007 à 16:04:10    

salut;
 
Comment pourrai-je faire pour comparer deux dates en perl
j'ai fait cela
 

Code :
  1. #!/usr/bin/perl -w
  2. use strict;
  3. use warnings;
  4. use English;
  5. use POSIX qw(strftime);
  6. my $madate1             = strftime( '%d/%m/%Y %H:%M:%S', localtime );
  7. my $madate='22/10/2008 12:00:00';
  8. if ($madate le $madate1)
  9. {
  10. print "ok\n";
  11. }
  12. else
  13. {
  14. print "ko\n";
  15. }


 
mon script affiche ok alors que 2008 est superieur a 2007
je ne comprends pas  
 
MErci

Reply

Marsh Posté le 25-04-2007 à 16:04:10   

Reply

Marsh Posté le 25-04-2007 à 16:52:19    

tu as la methode "Date_Cmp" du module Date::Manip.

Reply

Marsh Posté le 25-04-2007 à 17:07:24    

est-ce possible de le faire sans passer par un module ?

Reply

Marsh Posté le 25-04-2007 à 17:34:50    

Euh pourquoi s'en passer?
 
Au plus simple tu auras de toute manière besoin de  time::local  pour faire ta converstion string => seconds
 
Mais j'utiliserais plutot  datetime avec une petite explication qui va bien sur les sites des mongueurs:
http://datetime.mongueurs.net/Perl [...] deux_dates
 
Alors sinon tu peux biensur tout ré-écrire ...  
 
Dans une autre mesure:
- une recherche sur google te remontait les deux liens ci-dessus plus que rapidement
- dans le bouquin que je t'ai conseillé dans un précédent topic ( Perl CookBook) il y a tout un chapitre sur la gestion des dates.

Reply

Marsh Posté le 26-04-2007 à 09:10:06    

merci de vos reponses
les liens dont tu parles je les ai trouver et d'autres aussi
mais ce que je voulais c'est le faire sans module
et apparamment ça a l'air super compliqué
car il faut tous convertir par rapport à l'epoch

Reply

Marsh Posté le 26-04-2007 à 09:11:47    

l'intérêt de perl est de pouvoir utiliser des modules tout fait :/ ensuite ne pas pouvoir installer de module c'est autre chose, dans ce cas tu peux utiliser les modules livrés en standard avec perl

Reply

Marsh Posté le 26-04-2007 à 11:03:59    

c'est ce qui se passe aussi
c est que moi je suis debutant et que faire du perl c'est pas trop mon metier mais je suis obliger
et que je suis pas mettre de l'installation des modules
et que parfois l'installation de certains modules est pas possible;
mais je viens d'abandonner cette solution de comparaison des dates
Merci.

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed