2014-02-27 56 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震驚... –