84 votes

Obtenez la date du lundi, mardi, etc.

J'aimerais trouver le timbre à date du lundi, mardi, mercredi, etc. Si ce jour n'est pas encore arrivé cette semaine, j'aimerais que la date soit celle de cette semaine, sinon, la semaine prochaine. Merci!

146voto

Tom Haigh Points 32314

Voir strtotime()

 strtotime('next tuesday');
 

Vous pourriez probablement savoir si vous avez dépassé ce jour en regardant le numéro de la semaine:

 $nextTuesday = strtotime('next tuesday');
$weekNo = date('W');
$weekNoNextTuesday = date('W', $nextTuesday);

if ($weekNoNextTuesday != $weekNo) {
    //past tuesday
}
 

25voto

Josh Davis Points 12974

La question est étiquetée "php", comme le dit Tom, la façon de le faire serait la suivante:

 date('Y-m-d', strtotime('next tuesday'));
 

1voto

Larry Watanabe Points 7305

Désolé, je n'ai pas remarqué le tag PHP. Cependant, une solution VB pourrait intéresser quelqu'un d'autre:

 Module Module1

    Sub Main()
        Dim d As Date = Now
        Dim nextFriday As Date = DateAdd(DateInterval.Weekday, DayOfWeek.Friday - d.DayOfWeek(), Now)
        Console.WriteLine("next friday is " & nextFriday)
        Console.ReadLine()
    End Sub

End Module
 

1voto

Mike Points 773

Si je vous ai bien compris, vous voulez les dates des 7 prochains jours?

Vous pouvez faire ce qui suit:

 for ($i = 0; $i < 7; $i++)  
  echo date('d/m/y', time() + 86400 * $i);
 

Consultez la documentation de la fonction de date pour le format dans lequel vous le souhaitez.

0voto

JBrooks Points 4561

Vous ne savez pas exactement ce que vous demandez, mais si vous avez une fonction DayOfTheWeek, c'est une tâche triviale. Voici le code SQL qui sélectionne ce jeudi à moins que ce ne soit déjà mercredi, puis il sélectionne à partir de 2 jeudi.

 declare @dw int
declare @retDate datetime

set @dw = datepart(dw,getdate())

if @dw < 4 
    set @retDate = dateadd(dd,5-@dw,getdate())
else
    set @retDate = dateadd(dd,12-@dw,getdate())


select cast(convert(varchar(40),@retDate,101) as DateTime)
 

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X