我想要一周的第一天说我有第45周。现在我想要有本周第一个星期日的日期。 任何人都可以建议我如何解决这个问题吗?
谢谢
答案 0 :(得分:4)
搜索一下,建议最多的是:
$year = "2009"; // date("Y");
$week = "45"; // date("W");
$firstDayOfWeek = strtotime($year."W".str_pad($week,2,"0",STR_PAD_LEFT));
print("The first day of week ".$week." of ".$year." is ".date("D, d-m-Y",$firstDayOfWeek));
基本上,这归结为让 strtotime 为您完成工作。您填写“2009W45”,它将为您检索日期。 这里的陷阱是本周需要采用2位数格式。因此第1周需要为01,因此str_pad将其填充为零。
答案 1 :(得分:1)
像这样的代码
$next_sunday = strtotime('next sunday');
$next_week = strtotime('+1 week');
$next_sunday_of_next_week = strtotime('next sunday', $next_week);
希望这会有所帮助
答案 2 :(得分:0)
如果您有月,日和年:
$timestamp = mktime(0, 0, 0, $month, $day, $year);
echo date('c', $timestamp) = mktime(0, 0, 0, $month, date('d', $timestamp)-date('w', $timestamp), $year);
如果您有时间戳,也可以这样做:
echo $date('c', mktime(0, 0, 0, $month, date('d', $timestamp)-date('w', $timestamp), $year));
来自:http://pinoytech.org/blog/post/get-the-first-day-of-the-week-with-an-exact-date
答案 3 :(得分:0)
date($str_format, strtotime($year."W".$week."1"))
其中$str_format
是根据PHP date()
function的输出格式..我使用'M d Y'