我有星期幾'N'(星期一到星期六1)和星期'W'和一年'Y'。從星期一,星期和年份開始的PHP
我怎樣才能找到日期?
日的一週:4 周:35 年時間:2014年
應該輸出:2014年8月28日(星期四)
我一直在使用strotime()沒有任何的運氣嘗試。 我似乎無法找到指定星期和年份以及星期幾數字的方法。
我有星期幾'N'(星期一到星期六1)和星期'W'和一年'Y'。從星期一,星期和年份開始的PHP
我怎樣才能找到日期?
日的一週:4 周:35 年時間:2014年
應該輸出:2014年8月28日(星期四)
我一直在使用strotime()沒有任何的運氣嘗試。 我似乎無法找到指定星期和年份以及星期幾數字的方法。
您可以使用出於這樣的目的DateTime
的setISODate()
方法。你的解決方案几乎是正確的,但我不明白爲什麼你從一開始就沒有提供週日辯論。
function get_date($weekday, $week, $year) {
return (new DateTime())->setISODate($year, $week, $weekday)->format('Y-m-d');
}
var_dump(get_date(4, 35, 2014));
只是做了我自己的解決方案。這是你如何做到的。
function getDayDate($day, $week, $year) {
$day -= 1;
$dto = new DateTime();
$dto->setISODate($year, $week);
$dto->format('Y-m-d') . ' 00:00:00'; // start of the week date
$dto->modify('+'.$day.' days'); // add the days
$result = $dto->format('Y-m-d') . ' 23:59:59';
return $result;
}
$getdate = getDayDate(4, 35, 2014);
echo $getdate;
太棒了!謝謝。我沒有想到setISODate中的第三個參數。 – Karem 2014-08-31 14:50:37