Bonjour à vous tous cher ami(s) codeur,
J,ai un petit souci. Je vous explique j'ai une fonction php qui me fait un calcul entre la date du moment et la date dans ma bd pour m'indiquer que mon post à été publier il y a 1 mois ou 1 jour etc etc. Mais le problème est que dans ma fonction j'ai mis un s pour mon pluriels mais comme le mots mois est déjà supposer avoir un s même au singulier j'arrive pas à faire cette fonction pour prendre tout sa en considération car la j'ai mis moi pas de s pour mon singulier mais ce n'est pas trop professionnel et jolie non plus alors quelqu'un pourrais t'il m'aidé svp Merci à l'avance je vous envoi mon code source pour que vous voyez ce que je pourrais apporter à ma fonction.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31 static function time_elapsed_string($datetime, $full = false) { $now = new DateTime; $ago = new DateTime($datetime); $diff = $now->diff($ago); $diff->w = floor($diff->d / 7); $diff->d -= $diff->w * 7; $string = array( 'y' => 'an', 'm' => 'moi', 'w' => 'semaine', 'd' => 'jour', 'h' => 'heure', 'i' => 'minute', 's' => 'seconde', ); foreach ($string as $k => &$v) { if ($diff->$k) { $v = $diff->$k . ' ' . $v . ($diff->$k > 1 ? 's' : ''); } else { unset($string[$k]); } } if (!$full) $string = array_slice($string, 0, 1); return $string = 'Il y a environ ' . implode(', ', $string); }
Partager