Рассчитать дату с PHP - PullRequest
       1

Рассчитать дату с PHP

0 голосов
/ 24 октября 2011

Как установить значение диапазона дат для каждой недели, которая обновляется динамически с течением времени. Я хочу начать неделю в понедельник и закончить в воскресенье.

Пример вывода должен быть 2011-10-24,2011-10-31

Используя приведенное ниже, я получаю только дату месяца против ГГГГ-ММ-ДД

<?php  
   $today = getdate();
   $weekStartDate = $today['mday'] - $today['mon']+1;
   $weekEndDate = $today['mday'] - $today['wday']+7;
   echo "week start date:".$weekStartDate;
   echo "<br/>";
   echo "week end date:".$weekEndDate;
?>

Ответы [ 2 ]

2 голосов
/ 24 октября 2011

Как уже упоминалось в комментариях, используйте DateTime.

<?php
$dt = new DateTime('Monday this week'); // yes, DateTime is that awesome
$interval = new DateInterval('P6D'); // 6 days
?>

<dl>
    <dt>Week start date:</dt>
    <dd><?php echo $dt->format('Y-m-d') ?></dd>

    <dt>Week end date:</dt>
    <dd><?php echo $dt->add($interval)->format('Y-m-d') ?></dd>
</dl>
0 голосов
/ 24 октября 2011

Воспользуйтесь date('N') (день недели, 1 - 7):

$monday = mktime(0, 0, 0, date('n'), date('j') - (date('N') - 1));
$sunday = mktime(0, 0, 0, date('n'), date('j') - (date('N') - 7));

echo date('Y-m-d', $monday);
echo date('Y-m-d', $sunday);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...