par
two3d » 17 janv. 2024, 00:08
IL te faut échapper les lettres dans le 1er paramètre de la fonction date() sinon il essaye de les convertir : '\L\e d/m/Y \à H:i'
J'ai également remplacé H:M par H:i.
J'ai également fait des "return" directement plutôt que de l'assigner à une variable retournée en fin de fonction.
La date envoyé à la fonction doit être un TIMESTAMP. SI tu veux envoyer un format "06/01/2024" il te faudra d'abord passer $ladate avec
strtotime() avant de l'envoyer dans les
date().
function jour_date($ladate){
if(date("d-m-Y", time()) == date("d-m-Y", $ladate))
return "Aujourd'hui à " . date("H:i", $ladate);
else if(date("d", $ladate) == (date("d", time()) - 1) && date("m-Y", time()) == date("m-Y", $ladate))
return "Hier à " . date("H:i", $ladate);
return date('\L\e d/m/Y \à H:i', $ladate);
}
var_dump(jour_date(time()));//Aujourd'hui à ...
var_dump(jour_date(time() - 86400));//Hier à ...
var_dump(jour_date(time() - 864000));//Le ... à ...
IL te faut échapper les lettres dans le 1er paramètre de la fonction date() sinon il essaye de les convertir : '\L\e d/m/Y \à H:i'
J'ai également remplacé H:M par H:i.
J'ai également fait des "return" directement plutôt que de l'assigner à une variable retournée en fin de fonction.
La date envoyé à la fonction doit être un TIMESTAMP. SI tu veux envoyer un format "06/01/2024" il te faudra d'abord passer $ladate avec [color=#0000FF]strtotime()[/color] avant de l'envoyer dans les [color=#0000FF]date()[/color].
[PHP]function jour_date($ladate){
if(date("d-m-Y", time()) == date("d-m-Y", $ladate))
return "Aujourd'hui à " . date("H:i", $ladate);
else if(date("d", $ladate) == (date("d", time()) - 1) && date("m-Y", time()) == date("m-Y", $ladate))
return "Hier à " . date("H:i", $ladate);
return date('\L\e d/m/Y \à H:i', $ladate);
}
var_dump(jour_date(time()));//Aujourd'hui à ...
var_dump(jour_date(time() - 86400));//Hier à ...
var_dump(jour_date(time() - 864000));//Le ... à ...[/PHP]