2017-02-24 70 views
0

的數量我想要得到的天數按特定的日期,星期和年數,如何從天得到具體的日期,星期和年

$days = "Monday"; 
$number_of_week = date('W'); // 1 to 42 total number of weeks in years 
$year = date('Y'); // 2017 

getSpecificDate($days, $number_of_week, $year); 

它將返回

2017-02 -20

如何獲得?今年

$:今年

$周:

+0

有何你應該輸出嗎?你需要得到當前的日期還是其他的東西?你能否介紹一下你的問題 –

+0

請告訴我你期望的結果是什麼 –

+0

在使用ISO-8601周時,不要使用'Y'作爲年份,而是使用'o',即ISO-8601星期編號年份。 –

回答

0

試試這個:

$days = "Tuesday"; 
$number_of_week = date('W'); // 1 to 42 total number of weeks in years 
$year = date('Y'); // 2017 

function getSpecificDate($days, $number_of_week, $year){ 
    $week_day = date("Y-m-d", strtotime($year."W".$number_of_week)); 

    $date_time = strtotime($week_day.' next '.$days); 

    return date('Y-m-d', $date_time); 
} 

echo getSpecificDate($days, $number_of_week, $year); 
+0

謝謝先生,其工作,但它應該返回這個 $ week_day = date(「Y-m-d」,strtotime($ year。「W」。$ number_of_week));它的工作..謝謝你 –

0

這樣的功能,如果1〜9,應該前置0,如01〜09

$天:1〜7

getSpecificDate($days, $week, $year) { 

    return date("Y-m-d", strtotime($year . "W" . sprintf("%02u", $week) . $days)); 

} 
+0

輸出錯誤。如果$ day =「Monday」那麼輸出結果是2017-02-21,應該是2017-02-20 –

+0

已經使用mith方法解決了 我應該返回$ week_day = date(「Ymd」,strtotime($ year。「 W「。$ number_of_week)); 感謝您的幫助,m(_ _)m –

相關問題