我被要求實現一個系統,每天早上六點自動生成一個報告,其中需要一個開始日期和結束日期。報告實施本身已經是功能性的,但我很難理解的是如何獲得我需要的日期。在PHP中獲取具體日期
結束日期應該是上一個工作日(星期一到星期五;腳本將在週末運行,但使用最近的星期五生成報告,星期一的報告也將使用星期五作爲結束日期)。開始日期應該是該月第一天結束日期前的一年。我們目前手動指定日期。我知道如何使用DateTime對象來獲取昨天的日期,但那不是我正在尋找的。
我該如何獲得這些日期?我知道如果當天是星期六,星期天或星期一,我基本上可以創建一條if語句來說明如何使用星期五的日期,但我可以從哪裏出發?我只需要一天,一個月和一年。一天中的時間並不重要,因爲每當生成新報告時,腳本都會記錄當前時間戳。
這是我到目前爲止。
//Build the Inventory Part Report
function RunTest()
{
//End date should be last business day
$end_date = new DateTime();
$end_date->add(DateInterval::createFromDateString("yesterday"));
//Start date should be one year before end date on first day of that month
$start_date;
//$start_date="2014-12-01";
//$end_date="2015-12-30";
//Method generates report
generateReport($start_date, $end_date);
echo "New Report Generated Successfully!!";
}
http://php.net/manual/en/class.datetime.php –
你可以提供一些你已經嘗試過的代碼,因爲它會使它更清楚地理解。 –