Обсуждение проблем strtotime, например, «этот день х», когда день не = х, дает СЛЕДУЮЩИЙ х. ESOTERIC просьба игнорировать

0

EDIT: два минуса менее чем за минуту. Я думал, что это крошечный, но интересный вопрос.

ОРИГИНАЛЬНЫЙ ЗАПРОС: Я создаю пятинедельный календарь, в который я буду заливать информацию (день и дату и прочее).

Я хочу, чтобы верхняя левая ячейка была "текущим" воскресеньем.

Например, если сегодня является Weds 12th, тогда мне нужно найти Sun 9th в качестве начала для запуска. Затем я просто делаю $var = strtotime("+1 day", $var) для следующих 34 слотов.

Моя проблема делает это аккуратно, если сегодня воскресенье.

В настоящее время у меня есть:

date_default_timezone_set("Pacific/Honolulu");
$day_now = time();
$current_day= date ("D", $day_now);
if ($current_day == "Sun") 
{$day_now = strtotime("+1 day", $day_now);} 
$day_now = strtotime("last sunday"); 
//do stuff/

Я просто задавался вопросом, был ли более "аккуратный" способ сделать это.

Я пробовал "это воскресенье, последнее воскресенье, воскресенье на этой неделе", но не смог найти ничего, что могло бы выбрать сегодня, так как воскресенье и ТАКЖЕ работают до конца недели.

Любопытно, если кто-то нашел форму слов, которая работает для этого с strtotime.

Теги:
strtotime

1 ответ

0

У OK strtotime нет ни одной фразы для текущего запроса ("это воскресенье" в течение всей недели). (Я бы назвал это ошибкой!)

Связанные обсуждения

Странное поведение strtotime() при использовании относительных дат ("на этой неделе")

а также

Вычисление относительных дат в php с использованием strtotime()

предлагать решения.

Мне нравится мое текущее решение - хотя и не элегантное, оно очень читаемо, и я знаю, что, если я вернусь к нему через пару лет, я пойму, что происходит.

Надеюсь, что "это воскресенье" будет исправлено когда-нибудь в strtotime.

Спасибо за ввод.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню