【发布时间】:2016-03-18 19:44:18
【问题描述】:
我正在编写一个 PHP 程序,它将获取当前工作周(不包括星期一)的所有日期。我的代码如下:
//Get Year
$sql = "SELECT YEAR(CURDATE()) AS CurYear";
$result = mysqli_query($db, $sql);
$row = mysqli_fetch_array($result,MYSQLI_ASSOC);
$curyear = $row['CurYear'];
//Get Week
$sql = "SELECT WEEK(CURDATE()) AS CurWeek";
$result = mysqli_query($db, $sql);
$row = mysqli_fetch_array($result,MYSQLI_ASSOC);
$curweek = $row['CurWeek'];
//Get Date of Tuesday
$sql = "SELECT STR_TO_DATE('$curyear$curweek Tuesday', '%X%V %W') AS TueDate";
$result = mysqli_query($db, $sql);
$row = mysqli_fetch_array($result,MYSQLI_ASSOC);
$tuedate = $row['TueDate'];
它可以工作并且会返回这个星期二的日期,但是有没有更有效的方法来做到这一点,而且在接下来的 3 天里做到这一点?
【问题讨论】:
-
为什么要使用 MySQL 而不是直接在 PHP 中执行此操作?