我試圖使用代碼發現在PHP4.0最後一個工作日
$mnt = "Apr 2013"
echo date('d-M-Y', strtotime('last week day', strtotime($mnt)));
找到最後一個工作日,但它顯示11-Apr-2013
請幫我找什麼地方出了錯。
在此先感謝。
我試圖使用代碼發現在PHP4.0最後一個工作日
$mnt = "Apr 2013"
echo date('d-M-Y', strtotime('last week day', strtotime($mnt)));
找到最後一個工作日,但它顯示11-Apr-2013
請幫我找什麼地方出了錯。
在此先感謝。
該功能將在PHP> = 4.x的版本可能工作:
function lastWeekDay($mnt) {
$result = strtotime("1 $mnt");
$result = mktime(0, 0, 0, date('n', $result) + 1, 0, date('Y', $result));
while (in_array(date('D', $result), array('Sat', 'Sun'))) $result -= 86400;
return $result;
}
echo date('d-M-Y', lastWeekDay('Apr 2013')); # 30-Apr-2013
<?php
function lastWeekDay ($mnt)
{
$result = strtotime("last day of $mnt");
$day = date('D', $result);
if ('Sun' === $day)
{
$result -= 86400 * 2;
}
if ('Sat' === $day)
{
$result -= 86400;
}
return $result;
}
echo date('d-M-Y', lastWeekDay('Apr 2013'));
但是在相對格式中有一些「週日」的概念,所以使用strtotime應該是某種形式的選項? – Nanne
它返回'-1'作爲回答 – user2979046
那麼'''strtotime('2013年4月的最後一個工作日');'''對我來說會產生錯誤。 – jameslafferty
請你解釋我是什麼讓你放棄投票下來? – user2979046
請澄清,如果你想找到月份的最後一天或是工作日的月份的最後一天。即如果31日是星期一,這是您需要的數據。 –
@Andrew仍然是相同的結果。它在php 4中工作嗎? – user2979046