Ce code définit une classe gérant des données de type "DateTime" :
- Il permet de stocker une date quelconque dans le passé ou dans le futur, sans limitation liée au timestamp. (*)
- Il permet de formater une date pour son affichage de manière très flexible. Les options de formatage sont similaires à celles de la fonction PHP date(), à l'exception de certaines (notamment celles traitant des fuseaux horaires et jours de la semaine) non implémentées.
(*) Néanmoins, il ne tient pas compte des différents types de calendriers, corrections de dates historiques, ... Il ne peut donc etre utilisé tel quel pour des dates trop anciennes.
Le code source est présent dans le fichier zip.
Conclusion :
Des informations supplémentaires se trouvent dans le fichier lisezmoi.txt.
Merci d'indiquer tous bugs éventuels à yann(à)gauteron.ch
16 juin 2005 à 19:19
5 juil. 2004 à 13:12
GRenard: pour le zip, j'y penserai très bientot, promis.
derfum: Merci pour ton commentaire très constructif.
- Concernant les classes: effectivement, je ne suis pas très satisfait de la solution actuelle. Je pense bien repenser le design.
- Concernant les noms de classe / methode : la classe s'appelle initialement Date et pas date. C'est le site qui corrige la casse automatiquement :-( Pour le is_a, c'était volontaire, le is_a permettant justement de vérifier si un objet est bien une instance d'une classe donnée, le choix de ce nom de méthode me semblait pertinent.
- Je ne comprends pas le mélange méthodes/classes/fonctions dont tu parles.
- Le coté fini: effectivement, la méthode GetString n'est pas complète, notemment tout ce qui concerne les fuseaux horaires et les jours de la semaine.
-
3 juil. 2004 à 17:09
1- c'est très lourd (3 classes, 3 constantes, 7 propriétés, 28 méthodes !) pour des opérations sur des dates...
2- Tu utilises des noms de classes/méthodes déjà utilisés par PHP (date, is_a)
3- C'est en anglais (pour le formattage des dates), donc vraiment proche du comportement php (sauf pour les dates anterieures à 1970, en effet)
4- Tu mélanges tes méthodes/classes avec des fonctions PHP (checkdate et checktime, time,...) : On peut se poser la question sur l'utilité d'un tel script
5- C'est pas fini : Tu aurais pu le préciser (le switch dans date::GetString contient 13 cases vides mes les cases utilisées ne sont pas documentées)
6- Malgré cela, le code en soi est joli... enfin une jolie utilisation de surcharge (pour DateStruct::is_valid)
Par contre, j'ai appris graçe à "ton" script une façon interessante d'initialiser plusieurs variable avec list($var1,var2,...)= array(0,0,...)
FReD
3 juil. 2004 à 14:33
3 juil. 2004 à 03:26
Remet ton code (et un zip serait apprécié !)
Vous n'êtes pas encore membre ?
inscrivez-vous, c'est gratuit et ça prend moins d'une minute !
Les membres obtiennent plus de réponses que les utilisateurs anonymes.
Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.
Le fait d'être membre vous permet d'avoir des options supplémentaires.