Formater la date

Par Karim603, il y a 9 ans


Bonjour je voudrais formater la date pour mon tchat en minutes (ex: il y a 3 minutes) jusqu'a 59 minutes pour ensuite passer aux heures etc ...

J'ai réussi a le faire mais je bloque car je veux l'afficher dans une boucle grace a un fetch normal pour un tchat

4 réponses

Pierrot01, il y a 9 ans

Salut,
datediff est ton amie ;)

$datetime1 = new DateTime('2017-05-13 13:00'); $datetime2 = new DateTime('2017-05-13 15:50'); $interval = $datetime1->diff($datetime2); echo $interval->format('%H heures %I minute(s)');

@plus

Pierre

Karim603, il y a 9 ans

merci beaucoup !

Pierrot01, il y a 9 ans

J'avais quelques minutes à perdre ;

<?php function ilYA($dateTime){ $tabt = array(0=>" an",1=>" mois",2=>" jour",3=>" heure",4=>" minute"); $datetime1 = new DateTime($dateTime); $datetime2 = new DateTime('now'); $interval = $datetime1->diff($datetime2); $tmp = explode(' ',$interval->format('%y %m %d %h %i')); $retour = ""; foreach ($tmp as $key => $value){ // echo $key . "->" . $value."\n"; $retour .= ($value > 0) ? $value . $tabt[$key] : ''; $retour .= ($value > 1 && $key !=1) ? 's ' : ' ' ; } return "Il y a " . trim(str_replace(' ',' ',$retour)); } echo ilYA('2017-05-14 00:20') . "\n"; echo ilYA('2017-04-14 15:20') . "\n"; echo ilYA('2017-02-13 15:10') . "\n"; echo ilYA('2016-02-13 12:20') . "\n"; echo ilYA('2015-02-10 11:30') . "\n";

pour test

@plus