Я использую ColdFusion 9.0.1.
Я создаю конкурс каждый понедельник в полночь.Мне нужно использовать ColdFusion (но я уверен, что логика одинакова для других языков), чтобы найти дату самого последнего прошедшего понедельника.После определения этой даты я перенесу эту дату в оператор SQL, чтобы получить текущие результаты и прошлые результаты.
Итак, какие функции мне нужны, чтобы найти самый последний прошедший понедельник?
ОТВЕТ
Dates = structNew();
Dates.CurrentDay = dateFormat(now(), "yyyy-mm-dd");
// LOOP MAX OF SEVEN TIMES
for (i = 1; i lte 7; i++) {
// IF CURRENT DAY OF WEEK IS MONDAY SET AND BREAK
if (dayOfWeek(Dates.CurrentDay) == 2) {
Dates.BikeOfTheWeekDate = Dates.CurrentDay;
break;
// IF CURRENT DAY OF WEEK IS NOT MONDAY SUBTRACT DAY
} else {
Dates.CurrentDay = dateAdd("d", -1, Dates.CurrentDay);
}
}