Tom's Guide > Forum > Programmation > timestamp et php !
Mot :    Pseudo :           
 

bonjour.
bon voila mon probleme. je suis papa depuis peu et j'ai crée un site ou il y a des photos et autre trucs debile de pere atarder qui adule son gosse... enfin bref, le souci c'est que je voidrais mettre son age au format ISO (jj/mm/aaaa hh:mm) en faisant la comparaison de deux timestamp. si je prend le timestamp actuel et ke je soustrais le timestamp de la naissance j'obtiens son age en secondes et la !!!! je sais pas.
ma question est la suivante : comment, en php, je peut convertire une duré en seconde au format ISO???
merci de vos reponces

Liens sponsorisés
Inscrivez-vous ou connectez-vous pour masquer ceci.

tout simplement avec la fonction date à laquelle tu passe ton timestampt en deuxieme parametre apres le format de sortie souhaité. Dans ton cas, de tête pour le format mais à vérifier sur www.php.net/date :

Code :
  1. date('d/m/Y H:i', $ageEnSecondesDuPlusBeauBebeDuMonde);


Répondre à n1kk0

re.
en fait il me faudrai un moyen de convertir x secondes (ex 1.654.452 secondes) en jj/mm/aaaa hh:mm
je suis desoler je me suis mal exprimer.
en fait j'ai pris le timestamp actuel (tsa) et le timestamp de la naissance (tsn)
je fait : tsa-tsn et j'obtien 1839214.

mon bleme c'est que si je fait :
echo date('d/m/Y H:i', $seconde_naissance);
ou $seconde_naissance est la variable ou est stocker l'age de mon fils en seconde j'obtien :
22/01/1970 07:53
ce qui est logique car c la date corespondant au timestamp de ma variable !

je desire obtenir un truc du jenre
21jours 4heure et 23 min !
je suis relou dsl!
merci


Message édité par cql le 11-03-2007 à 23:43:07
Répondre à cql

Je n'ai que trouvé que ca pour le moment ( je n'avais jamais essayé de faire ce genre de compteur).

Code :
  1. <?php
  2. $naiss = mktime(0, 0, 0, 07, 27, 1992);
  3. $today = mktime();
  4. $secondes = ($today > $naiss)? $today - $naiss : $naiss - $today;
  5. $annees = date('Y', $secondes) - 1970;
  6. echo "Je suis né il y a $annees an" . ($annees>1?'s':null) . '.';
  7. ?>
  8. C'est évidement très limité et à réserver aux âge inférieur à 35 (pour l'heure...).
  9. Une fonction plus complète se trouve sur PHP.net, dans un commentaire de la fonction date(). Cette fonction formatte le jour, le mois et l'année, puis compare les valeurs entre elles pour vérifier que le nombre d'années est exact.
  10. <?
  11. function age($naiss)  {
  12.   list($annee, $mois, $jour) = split('[-.]', $naiss);
  13.   $today['mois'] = date('n');
  14.   $today['jour'] = date('j');
  15.   $today['annee'] = date('Y');
  16.   $annees = $today['annee'] - $annee;
  17.   if ($today['mois'] <= $mois) {
  18.     if ($mois == $today['mois']) {
  19.       if ($jour > $today['jour'])
  20.         $annees--;
  21.       }
  22.     else
  23.       $annees--;
  24.     }
  25.   echo $annees;
  26.   }
  27. age('1948-05-20')
  28. ?>



Une autre source.

Code :
  1. <?php
  2. // -- DATE 1 --
  3. $date = &quot;22/10/1989&quot;;
  4. $jour = substr($date,0,2); // on récupère le jour
  5. $mois = substr($date,3,2); // puis le mois
  6. $annee = substr($date,6,4); // et l'annee ...
  7. // on aurait également pu plutot utiliser
  8. // list($jour,$mois,$annee) = explode(&quot;/&quot;,$date);
  9. // on transforme la date en timestamp
  10. $timestamp = mktime(0,0,0,$mois,$jour,$annee);
  11. // -- DATE ACTUELLE --
  12. // directement en timestamp.
  13. $maintenant = time();
  14. // -- CALCUL --
  15. // on calcule le nombre de secondes d'écart entre les deux dates
  16. $ecart_secondes = $maintenant - $timestamp;
  17. // puis on tranforme en jours (arrondi inférieur)
  18. $ecart_jours = floor($ecart_secondes / (60*60*24));
  19. // enfin on affiche le résultat
  20. setlocale(&quot;LC_TIME&quot;, &quot;fr&quot;
  21. echo &quot;$ecart_jours jours se sont écoulés depuis le &quot;.strftime(&quot;%A %d %B %Y&quot;
  22. ?>



Dès que j'ai un peu de temps j'essaierai de regarder d'un peu plus près.


Message édité par RiiMii le 12-03-2007 à 08:29:29
------------------------------
La théorie, c'est quand on sait tout et que rien ne fonctionne. La pratique, c'est quand tout fonctionne et que personne ne sait pourquoi.
Ici, nous avons réuni théorie et pratique : Rien ne fonctionne et personne ne sais pourquoi...
Répondre à RiiMii
Tom's Guide > Forum > Programmation > timestamp et php !
Aller à :

Il y a 2436 utilisateurs connus et inconnus. Pour voir la liste des connectés connus, cliquez ici.

Attention

Vous allez répondre sur un sujet resté inactif pendant plus de 6 mois.
Assurez-vous d'apporter des éléments nouveaux à la discussion avant de poursuivre.

Répondre Annuler
Liens