Как я могу получить Date of Monday
и Date of Sunday
, если у меня есть конкретная дата в mysql
DATETIME
формате?PHP Как получить дату понедельника и воскресенья недели, в которую выпадает данная дата?
Я пытаюсь получить дату первого дня недели и дату последнего дня, в которой данная дата падает.
У меня есть дата '2016-06-05' его в 'Y-m-d'
, и я стараюсь, как этот путь.
<?php
$date = '2016-06-05';
echo date("Y-m-d", strtotime('monday this week', strtotime($date))), "\n";
echo date("Y-m-d", strtotime('sunday this week', strtotime($date))), "\n";
?>
но его предоставление
2016-06-06
2016-06-12
, который неправильно неделю, она должна дать
2016-05-30
2016-06-05
я даже пытался, как таким образом.
$date = '2016-06-05';
echo date("Y-m-d", strtotime('monday', strtotime('this week', strtotime($date)))), "\n";
echo date("Y-m-d", strtotime('sunday', strtotime('this week', strtotime($date)))), "\n";
ИЛИ
$date = '2016-06-05';
echo date("Y-m-d", strtotime('monday', strtotime($date))), "\n";
echo date("Y-m-d", strtotime('sunday', strtotime($date))), "\n";
с помощью PHP 5.3
что я здесь отсутствует?
UPDATE:
я придумал это, это дает ожидаемый результат.
function get_monday_sunday($date){
$dates_array = array();
if(date('N', strtotime($date)) == 7){
$dates_array['monday'] = date("Y-m-d", strtotime('Monday last week', strtotime($date)));
$dates_array['sunday'] = date("Y-m-d", strtotime('Sunday last week', strtotime($date)));
}else{
$dates_array['monday'] = date("Y-m-d", strtotime('Monday this week', strtotime($date)));
$dates_array['sunday'] = date("Y-m-d", strtotime('Sunday this week', strtotime($date)));
}
return $dates_array;
}
$date = '2016-06-05'
print_r(get_monday_sunday($date));
выглядит, когда день последний день недели, а затем на следующей неделе начинается сначала, то есть PHP начала недели является воскресенье я думаю.
эхо-дата («Y-m-d», strtotime ('sunday last week', strtotime ($ date))), "\ n"; потому что воскресенье - последний день недели в php – splash58
спасибо, у меня много дат, так это будет работать на любую заданную дату? – AMB
Я не уверен, что воскресенье 1-го или последнего дня не задано конфигурацией сервера. Но в вашем текущем окружении он будет работать – splash58