2013-04-13 109 views
0

我想寫一個自定義函數來獲取日期數字,但要求是週數是自定義的,即第1周從3月的第一週開始,每週的第一天是星期五 我試圖在PHP中做到這一點。從週數開始計算日期 - 年份從3月開始 - 第1周= 3月第1周 - PHP

你的幫助或建議對寫這個功能會很有幫助。 我在這裏經歷了一些功能,但實際上並不符合我的要求。

感謝你

+0

你能不能給樣品輸入使用並函數的示例輸出? – Patashu

+0

這是一個函數參考這是Stackoverflow本身 $ week_number = 1; $ year = 2013; ($ day。「W」。$ week_number。$ day))。「\ date」 N「; } 但是這裏需要標準的星期,並且說我的一週在3月開始 – vin

+0

那麼第一週實際上可能少於7天?例如如果3月1日是星期四,那麼這將是1天的一週? –

回答

0

這可能會給你一個起點:

$year = 2012; 
$startDate = new \DateTime($year . '-03-01'); 
$startDate->modify('Friday'); 
echo $startDate->format('Y-m-d') , PHP_EOL; 
$endDate = new \DateTime($year+1 . '-03-01'); 
$endDate->modify('Friday'); 
echo $endDate->format('Y-m-d') , PHP_EOL; 

$interval = new \DateInterval('P1W'); 
$weekPeriod = new \DatePeriod ($startDate, $interval, $endDate); 

foreach ($weekPeriod as $key => $weekDate) { 
    echo 'Week #' , $key + 1 , ' starts on '; 
    echo $weekDate->format('Y-m-d') , PHP_EOL; 
} 

您可以使用它來創建數組,然後你可以作爲查找

+0

謝謝馬克。我會通過它並更新你。感謝您的快速幫助 – vin

+0

是的,您對自己想要實現的目標有所幫助。再次感謝。 :) – vin

相關問題