Я пытаюсь выяснить первую среду месяца, используя strtotime
, но аргумент «первая среда» терпит неудачу, когда первая среда выпадает на 1-й.Получение первого дня недели в месяц с strtotime
Для более общей иллюстрации этой проблемы см следующий код и результат:
$mon = strtotime("December 2010 first monday");
$tue = strtotime("December 2010 first tuesday");
$wed = strtotime("December 2010 first wednesday");
$thu = strtotime("December 2010 first thursday");
$fri = strtotime("December 2010 first friday");
$sat = strtotime("December 2010 first saturday");
$sun = strtotime("December 2010 first sunday");
echo strftime("%m/%d/%y", $mon) . "<br>";
echo strftime("%m/%d/%y", $tue) . "<br>";
echo strftime("%m/%d/%y", $wed) . "<br>";
echo strftime("%m/%d/%y", $thu) . "<br>";
echo strftime("%m/%d/%y", $fri) . "<br>";
echo strftime("%m/%d/%y", $sat) . "<br>";
echo strftime("%m/%d/%y", $sun) . "<br>";
Результаты в:
12/06/10
12/07/10
12/08/10
12/02/10
12/03/10
12/04/10
12/05/10
Уведомление что-то? Разве один день недели не должен совпадать с 1-м месяцем? Но это никогда не происходит, и вместо этого второй экземпляр дня, восьмого, всегда возвращается.
У кого-нибудь есть объяснение?
уверен, это работает. Давайте не будем спрашивать, почему ... – Yarin 2010-12-05 05:45:57
Ну, вы можете посмотреть исходный код php, если вы действительно любопытно, что касается меня, давайте перейдем дальше: D – 2010-12-05 05:47:19