在web开发中,我们经常需要计算某个日期是星期几。php提供了一个内置函数 date(),可以帮助我们完成这个任务。本文将介绍如何使用php中的 date() 函数来计算某个日期是星期几。
date()函数
在PHP中, date() 函数可以获取当前日期和时间,并将它们格式化为指定的字符串。常用的格式化选项包括日期、时间、星期几等等。具体使用方法如下:
string date ( string $format [, int $timestamp = time() ] )
其中,format 参数表示需要格式化的字符串格式,timestamp 参数是可选的,表示需要格式化的时间戳。如果该参数没有传递,则默认为当前时间戳。返回值为格式化后的日期字符串。例如:
echo date('Y-m-d H:i:s'); //输出当前时间的标准格式输出结果为类似下面的格式:
2021-05-11 16:21:30
计算星期几
date() 函数还可以通过一些特殊的格式化选项,来输出某个日期是星期几。下面是常用的星期几格式化选项:
立即学习“PHP免费学习笔记(深入)”;
-
l(小写字母L)- 星期几的完整名称,例如:Sunday, Monday等等。 -
N- 数字表示的星期几,例如:1表示星期一,2表示星期二等等。 -
D- 简写的星期几名称,例如:Sun, Mon等等。
我们可以通过 date() 函数配合上述的格式化选项,来计算某个日期是星期几。例如,下面的代码可以输出今天是星期几:
echo date('l'); //输出今天是星期几的完整名称输出结果为:
Tuesday
同样,如果我们想输出今天是星期几的数字表示形式,可以使用 N 格式化选项:
echo date('N'); //输出今天是星期几的数字形式输出结果为:
2
计算任意日期是星期几
除了上面的示例外,我们还可以使用 date() 函数来计算任意日期是星期几。具体步骤如下:
- 首先,需要将目标日期转换为时间戳。时间戳是一个表示时间的数字,它表示从1970年1月1日0时0分0秒开始经过的秒数。
- 然后,将时间戳作为第二个参数传递给
date()函数,并使用l或N格式化选项来输出目标日期是星期几。
下面是计算任意日期是星期几的示例代码:
//要计算的目标日期
$date = '2021-05-10';
//将目标日期转换为时间戳
$timestamp = strtotime($date);
//使用date函数输出星期几
echo date('l', $timestamp); //完整名称形式,输出Monday
echo date('N', $timestamp); //数字形式,输出1
echo date('D', $timestamp); //简写形式,输出Mon由于输入的日期是 '2021-05-10',是星期一,因此上述代码输出结果都应该是 Monday,1 和 Mon。
封装为函数
为了方便以后的调用,我们可以将上述代码封装为一个函数。下面是示例代码:
function getDayOfWeek($date) {
$timestamp = strtotime($date);
return date('l', $timestamp);
}
echo getDayOfWeek('2021-05-10'); //输出 Monday使用这个函数,我们可以更方便地计算某个日期是星期几。将日期作为函数的参数传递进去,函数会返回该日期是星期几的完整名称。
总结
在PHP中,我们可以使用 date() 函数来计算任意日期是星期几。只需要将日期转换为时间戳,并使用 l 或 N 格式化选项,就可以输出目标日期的星期几了。如果需要频繁地进行这种计算,可以将代码封装为一个函数来提高代码的复用性和可读性。











