我怎么能得到一周的开始日期和结束日期从任何给定日期
问题描述:
使用PHP我怎样才能从任何给定日期一周的开始日期和结束日期。例如2010-05-13这么周四我怎样才能2010-05-09(SUN)和2010-05-15(SAT)我怎么能得到一周的开始日期和结束日期从任何给定日期
答
先将其转换为一个时间戳(的strtotime,mktime,等等)。所以我认为$ tm是00:00:00的时间戳。
$w = date("w", $tm);
echo(date("Y-D-m", $tm - (86400 * $w)));
echo(date("Y-D-m", $tm + 86400 * (6 - $w)));
答
DateTime随着(PHP 5.2+):
function weekBorders($date) {
$borders = array();
$borders['first'] = new DateTime($date->format('Y-m-d') .' - '. $date->format('w') .' days');
$borders['last'] = new DateTime($date->format('Y-m-d') .' + '. (6 - $date->format('w')) .' days');
return $borders;
}