Questions sur les Dates PHP ( - assez urgent - ) - PHP - Programmation
Marsh Posté le 15-11-2002 à 22:58:27
gatorette a écrit a écrit : Question 1. C'est ça que tu cherches ? |
=> Non, pas vraiment, car ici, je vais avoir comment récupérer le jour, mois année, etc... ce que je veux savoir c'est si on peut calculer jj.mm.aaaa à partir de date(U).
gatorette a écrit a écrit : Question 2. Parmi le peu de scripts PHP que je connais et qui stockent la date dans une BDD, ils stockent tous la date en utilisant le format de la base de donnée. |
=> c'est à dire
Marsh Posté le 15-11-2002 à 23:35:33
Va falloir que tu expliques plus précisemment ce que tu veux faire car j'ai rien compris !
Ce que j'avais compris :
Q1.: J'ai un timestamp (ton "date(U)" ) que je souhaite afficher sous une forme lisible ("jj.mm.aaaa" ). Comment faire ?
R1.: Dans ce cas un "date( "dmY", timestamp );" doit fonctionner (c'était ma première réponse).
Q2.: Dans ma base de donnée, sachant que je n'utilise la date que pour l'affichage vu plus haut, dois-je stocker la date sous la forme du timestamp ou sous sa forme textuelle ?
R2.: Il me semble mieux de stocker la date sous la forme appropriée à ta base de donnée (elles possèdent toutes un type date/time).
Comme apparemment ce n'est pas ce que tu souhaites, ce serait pas mal que tu reformules et que tu reprécises certaines choses. Je pense notamment à "calculer", "date(U)", "base"...
Marsh Posté le 15-11-2002 à 23:43:36
ok, je reformule :
j'ai $date=date(U)
$date est alors égal au nombre de seconde écoulé depuis une certaine date (01.01.1970 00h00'00" )
est-il possible de retrouver la date qui est égale à $date juste avec ces données : date(U) et la date de référence 01.01.1970 00h00'00"
Marsh Posté le 16-11-2002 à 00:17:00
Ton $date est donc au format UNIX TIMESTAMP qui est le format utilisé par PHP (le deuxième argument de la fonction date par exemple). Tu dois donc pouvoir utiliser la fonction Date :
Code :
|
Ca afffiche :
01.01.1970 |
Si ce n'est pas ce que tu veux, j'ai rien compris. Si ta date de référence n'est pas 01.01.1970 (en gros ce n'est pas un UNIX TIMESTAMP), ça va être un peu plus compliqué et tu vas devoir utiliser une fonction comme mktime.
Marsh Posté le 16-11-2002 à 09:56:19
gatorette a écrit a écrit : Question 1. C'est ça que tu cherches ? Question 2. Parmi le peu de scripts PHP que je connais et qui stockent la date dans une BDD, ils stockent tous la date en utilisant le format de la base de donnée. |
Avec MySQL si tu veux que la date que tu lis dans la DB vienne dans un autre format c'est simple tu fais ceci :
si tu veux qu'une date au format aaaa-mm-jj
arrive au format jj-mm-aaaa
SELECT DATE_FORMAT(ChampDate, '%d-%m-%Y') AS ChampDate FROM Table1; |
pour plus d'infos sur les format de dates et heures:
http://www.mysql.com/doc/en/Date_a [...] tions.html
voila c'est tout simple
a+
edit: mince chui mal reveillé j'avais pas vu qu'ilvoulait que ca soit dans le script php. M'enfi nc quand meme bon a savoir
Marsh Posté le 16-11-2002 à 17:29:20
gatorette a écrit a écrit : Question 2. Parmi le peu de scripts PHP que je connais et qui stockent la date dans une BDD, ils stockent tous la date en utilisant le format de la base de donnée. |
et pourtant certains resistent et n'utilisent jamais les formats de date proposés.
jutilise aaaammdd voir aaaammddhhmmss, ce qui permet detre independant du SGBD, permet un tri chronologique. Reste a faire deux fonctions, lune pour ecrire la date ds la BD, et lautre qui formate pour l'affichage.
Marsh Posté le 16-11-2002 à 17:33:36
putain c'est pas croyable le nombre de questions dont les réponses se trouvent noir sur blanc dans la doc.
Le lien vers la doc nexen (donc en français) est présent dans les biblios link et trouvable un peu partout sur ce forum y'en a encore qui regardent pas...
Marsh Posté le 15-11-2002 à 20:42:36
Question 1.
Est-il possible de calculer une date 'jj.mm.aaaa' à partir d'une date date(U)
Question 2.
Est-il plus rapide de calculer la date 'jj.mm.aaaa' à partir d'une date date(U), ou plus rapide de l'insérer dans une base et d'y faire appel
Message édité par xkamui le 15-11-2002 à 20:56:28