如何使用 php 检查日期是否为星期六(或周末)

how to check if the date is a Saturday (or end of the week) using php

我只是想运行一个脚本,该脚本将每周从我的 MySQL 数据库中的列中添加所有内容。现在我试图让 php 检查日期是否是星期六,然后它将从数据库中取出最后 6 天(行)并将列(数字)下的行添加在一起。有没有一种更简单的方法可以从一周开始将所有内容加在一起?如果不是,我将如何检查日期(行)是否是星期六? 编辑: 我的数据库结构是: ID 日期 total_miles 评论 total_miles 列是整数,这就是我每周需要通过检查日期是否为星期六来加在一起的内容

来自 mysql 文档 http://dev.mysql.com/doc/refman/5.5/en/date-and-time-functions.html#function_dayofweek:

 DAYOFWEEK(date)

Returns the weekday index for date (1 = Sunday, 2 = Monday, …, 7 = Saturday). These index     values correspond to the ODBC standard.

mysql> SELECT DAYOFWEEK('2007-02-03');
        -> 7

如果我想根据工作日将事物组合在一起,我可能会使用:

SELECT SUM(total_miles) FROM tablename GROUP BY WEEK(id);

http://dev.mysql.com/doc/refman/5.5/en/date-and-time-functions.html#function_week

附加:

您可以在 select 语句中 select WEEK(id) 或 DAYOFWEEK(id),以便稍后在 PHP.

中使用

如果你想在 php 中做同样的事情(一般来说,如果可以的话,在 SQL 中做一些事情,但也有奇怪的情况),你可以使用 php date 命令 - 请参阅 http://php.net/manual/en/function.date.php(假设您将日期作为 unix 时间戳;如果没有继续往下阅读)。

您可以使用 'D' 格式获取星期几的 NAME,'N' 或 'w' 获取星期几的 NUMBER,或者'W' 获取一年中的第 NUMBER 周。

如果您将日期作为 DateTime 或文本(可以轻松转换为 DateTime),则可以使用 DateTime::format - 请参阅 http://php.net/manual/en/datetime.format.php 上的示例 - $format 参数与上面的日期函数相同。

date("l",$timestamp)date("w",$timestamp) 可以查看 PHP.

中的星期几

如果它是 mysql 数据库日期格式,您可以使用 date("w",strtotime($date)) 来知道星期几。

请看:date() and strtotime()