8722 sujets

Développement web côté serveur, CMS

connecté
Bonjour à tous
Je souhaite obtenir 3 variables $today $tomorrow et $yesterday pour mes utiliser dans une requête SLQ
Tout ce que je trouve pour faire ça c'est

$today = date('Y-m-d');
$TOMORROW = new DateTime($today);
$TOMORROW -> add(new DateInterval('P1D'));
$tomorrow = $TOMORROW -> format('Y-m-d');
$YESTERDAY = new DateTime($today);
$YESTERDAY -> sub(new DateInterval('P1D'));
$yesterday = $YESTERDAY -> format('Y-m-d');

Existe-t-il une solution moins lourde pour ce problème élémentaire?
Administrateur
Il y a aussi cette syntaxe un peu plus basique
$tomorrow = date('Y-m-d', strtotime('+1 day'));
$yesterday = date('Y-m-d', strtotime('-1 day'));
Meilleure solution
Salut,

Je ne sais pas ce que tu cherches à faire, mais pour info en autre piste, cela peut aussi "relativement facilement" ce manipuler du coté SQL. Le plus pénible c'est de se souvenir du noms des fonctions..
Il y a un globalement bon récapitulatif ici : https://www.geeksforgeeks.org/sql-query-to-get-yesterday-and-tomorrow/

Et en particulier pour toi :
SELECT CURDATE(),
    DATE_SUB(CURDATE(),INTERVAL 1 DAY) AS yesterday,
    DATE_ADD(CURDATE(),INTERVAL 1 DAY) AS tomorrow;


Bonne journée,
connecté
Merci c’est également une bonne solution. Je vais me plonger dans ces fonctions SQL dont j’ignorais l’existence. Il est vrai que je me suis passé de SQL jusqu’à récemment, mes compétences d’as ce domaine sont quasi nulles.