2014-02-27 52 views
1
之间的整数“星期”

我不能到MySQL和PHP之间的号码“星期几”相匹配的最佳方法决定匹配的PHP和MySQL

PHP

$date = strtotime('2014-02-15'); 
$day_number = $day_of_week = date("w", $date); 
$day = $day_of_week = date('l', $date); 

echo $day." ".$day_number; 

输出:星期六6

MySQL的

SELECT DAYOFWEEK( '2014-02-15'); 

输出:7

SELECT WEEKDAY( '2014-02-15'); 

输出:5

有没有办法来热身赛,这些数字没有写我自己的自定义功能?

回答

7

DAYOFWEEK有以下对策:(1 =周日,2 =周一,...,7 =周六)

自PHP date('w');有以下回应:0 (星期天)到6(星期六)

所以你可以只使用date('w') + 1并获得在两个相同的答案。

http://www.php.net/manual/en/function.date.php

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

+0

好了'日期( 'W')+ 1'等同于'DAYOFWEEK'但'日期('N')%7'似乎不正确(对于星期日,它返回0,而DAYOFWEEK返回1) – AlterPHP

+0

@AlterPHP是的,你是正确的,不知道我是如何混合起来,没有人抓到它 – Pitchinnate

3
SELECT DATE_FORMAT( '2014-02-15', '%w') 

输出:6

+1

我仍然通过各种MySQL的功能inconsitency震惊... –