需要帮助在SQL数据库中从日期检索日期

时间:2015-07-02 22:29:15

标签: php mysql sql

我从sql数据库中获取数据

$sql = mysql_query("SELECT * FROM entries WHERE id='$id'");

while($row = mysql_fetch_array($sql)){ 

    $title = $row["title"];
    $contents = $row["contents"];
    $author = $row["author"];
    $date = $row["date"];
     $date = strftime("%b %d, %y", strtotime($date));   

     }

然后我使用print $ date来查看日期。 怎么还可以从那个日期开始这一天......就像周日,星期一一样?

4 个答案:

答案 0 :(得分:0)

请参阅this answer

总结:$day = date('l', strtotime($date));

答案 1 :(得分:0)

如果你想使用查询来返回星期几,而不是使用PHP,你可以像这样使用内置在数据库中的DATE_FORMAT函数。

 select *, DATE_FORMAT(entryDate, '%W') as dayOfWeek from entries

答案 2 :(得分:0)

另一种选择是使用MySQL函数DAYOFWEEK:

SELECT *, DAYOFWEEK(`date`) AS day FROM entries WHERE id='$id'

一个包含代码的完整PHP示例(尽管我的强烈意见是您应该切换到使用PDO or MYSQLI driver


$days = array(
    'Sunday',
    'Monday',
    'Tuesday',
    'Wednesday',
    'Thursday',
    'Friday',
    'Saturday',
);


$sql = mysql_query("SELECT *, DAYOFWEEK(`date`) AS day FROM entries WHERE id='$id'");

while($row = mysql_fetch_array($sql)){ 

    $title = $row["title"];
    $contents = $row["contents"];
    $author = $row["author"];
    $date = $row["date"];
    $date = strftime("%b %d, %y", strtotime($date));   
    $day = $days[$row["day"]-1];
     }

答案 3 :(得分:0)

试试这个$day = date('l', strtotime($date));