Witam, mam problem z kodem ktory bedzie wyświetlał ostatni czwartek lub niedziele w zależności od aktualnej daty i potem reszte dni, jeżeli czwartek lub niedziela jest dniem aktualnym to wyświetly date tego dnia i ostatni czwartek lub niedziele i przedostatni czwartek lub niedziele mój kod wyglada tak:
$fday = 'Thursday';//czwartek
$sday = 'Sunday';//niedziela
// wyświetlenie czwartku lub niedzieli albo ostatniego czwartku lub niedzieli w zależności który bliżej
$day = date('D');
if($day == 'Thu' OR $day == 'Sun'){
$today = date('d-m');
// wyświetlenie ostatniego czwartku lub niedzieli
if( (date('d')+date('d',strtotime("last $sday"))) > (date('d')+date('d',strtotime("last $fday")))) {
$lastday = date('d-m',strtotime("last $sday"));
$lastday2 = date('d-m',strtotime("last $fday"));
} else {
$lastday = date('d-m',strtotime("last $fday"));
$lastday2 = date('d-m',strtotime("last $sday"));
}
}elseif ( (date('d')+date('d',strtotime("last $sday"))) > (date('d')+date('d',strtotime("last $fday")))) {
$lastday = date('d-m',strtotime("last $sday"));
$lastday2 = date('d-m',strtotime("last $fday"));
$lastday3 =date('d-m',strtotime("last $sday - 1 week"));
} else {
$lastday = date('d-m',strtotime("last $fday"));
$lastday2 = date('d-m',strtotime("last $sday"));
$lastday3 =date('d-m',strtotime("last $fday - 1 week"));
}
if (isset($today)){
$firstDay = $today;
$secondDay = $lastday;
$thridDay = $lastday2;
} else {
$firstDay = $lastday;
$secondDay = $lastday2;
$thridDay = $lastday3;
}
Chodzi o to że, chce stworzyć kod który wyświetla mi ostatni czwartek lub niedziele w zależności który jest bliżej aktualnej daty. Załóżmy że jest data 06-05 to chciałbym uzyskać datę 06-04, 31-05, 28-05. Czyli ostatni czwartek 06-04 następnie niedziela 31-05 i znowu czwartek 28-05. Jeżeli aktualna data to niedziele lub czwartek załóżmy 28-05. To chce uzyskać 28-05, 24-05 i 21-05.
ogólnie kod działa robi się problem w momencie gdy w miesiący pierwszy napotkany jest czwartek i az do niedzieli pierwszej wyświetla zle mógłbym dodać kolejnego ifa ktory sprawdza czy pierwszy czwartek = ostatniemu czwartku && różnica miedzy czwartkiem a niedzielą wynosi 20 ale może jest na to lepszy sposób?