我知道我可以使用date("w");
来获取0-6的数字,具体取决于它是什么日期,但我如何才能看到当月第一天的哪一天?例如,本月3月1日是星期三,因此应该在星期三返回3。
我尝试使用此date("w", "Y-m-01")
,但它只是给了我错误
Warning: date() expects parameter 2 to be long, string given
答案 0 :(得分:2)
这将返回当前月份中的第一天(例如“星期三”):
echo date('l',mktime(0, 0, 0, date('m'), 1));
..我怀疑这对OP更有用,因此接受,但事实上它可以被修改以满足问题的确切要求(数字 - 例如“3”):
echo date('N',mktime(0, 0, 0, date('m'), 1));
答案 1 :(得分:0)
<?php
$month_start = strtotime('first day of this month', time());
//first day name , month, year
echo date('D, m Y', $month_start).'<br/>';
//first day number (Monday = 1, Tuesday = 2) etc , month, year
echo date('N, m Y', $month_start).'<br/>';
答案 2 :(得分:0)
我试过这个:
$date = date("N", mktime(0, 0, 0, date('n'), 1, date('Y')));
echo $date;
答案 3 :(得分:-2)
您可以使用类DateTime
来完成echo (new DateTime('first day of this month'))->format('jS, F Y');
echo (new DateTime('2017-03-17'))
->modify('first day of this month')
->format('jS, F Y');