4 votes

Obtenez le dernier jeudi, mais seulement s'il s'agit du deuxième jeudi de cette séquence.

Je sais que je peux obtenir le dernier jeudi avec ça.

$firstdate = strtotime('last thursday');

Cependant, au moment de la publication de cette question, il reviendra

August 2nd, 2012

Ce dont j'ai besoin, c'est du dernier jeudi qui suit ce cycle de deux semaines :

  • 9 août
  • 23 août
  • 6 septembre
  • 20 septembre

Et un jeudi sur deux après ça.

  • Ainsi, si la date actuelle est le 10 août, elle renverra le 9 août.

  • Si la date actuelle est le 21 août, elle renverra également le 9 août (même si le jeudi précédent est le 16 août).

  • Si la date actuelle est le 24 août, elle renverra le 23 août.

  • Si la date actuelle est le 1er septembre, elle renverra également le 23 août (même si le jeudi précédent est le 30 août).

4voto

J.-B. C. Points 772

Utilisez le numéro de la semaine.

Ce que vous voulez, ce sont les jeudis de la semaine qui ont une date de début de semaine. nombre pair .

Voici une façon de le faire :

function getLastEvenWeekThursday()
{
    $lastThursday = strtotime('last thursday');
    $weeknumber = date("W", $lastThursday);
    if($weeknumber % 2 == 0)
        return $lastThursday;
    else
        return $lastThursday - 3600*24*7;
}

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