代碼中使用如何顯示特定月份
$date_from1 = new DateTime('1-9-2016');
$date_from=$date_from1->format('Y-m-d');
$date_to1 = new DateTime('30-9-2016');
$date_to=$date_to1->format('Y-m-d');
$diff1=$date_from1->diff($date_to1);
$diff2= $diff1->format('%R %a days');
preg_match_all('!\d+!', $diff2, $matches); //use that to get only number from diff2
for($i=0; $i <= $matches[0][0]; $i++) //$matches return diff2 only number of days
{
$this_date=$date_from1->add(new DateInterval('P1D'));
echo $this_date->format('Y-m-d') . "<br/>";
}
我的輸出
2016年9月2日2016年9月3日2016年9月4日2016年9月5日的所有日期2016-09-06 2016-09-07 2016-09-08 2016-09-09 2016-09-10 2016-09-11 2016-09-12 2016-09-13 2016-09-14 2016-09 -15 2016-09-16 2016-09-17 2016-09-18 2016-09-19 2016-09-20 2016-09-21 2016-09-22 2016-09-23 2016-09-24 2016- 09-25 2016-09-26 2016-09-27 2016-09-28 2016-09-29 2016-09-30 2016-10 -01
預期輸出
2016年9月1日2016年9月2日2016年9月3日2016年9月4日2016年9月5日2016年9月6日 2016-09 -07 2016-09-08 2016-09-09 2016-09-10 2016-09-11 2016-09-12 2016-09-13 2016-09-14 2016-09-15 2016-09-16 2016- 09-17 2016-09-18 2016-09-19 2016-09-20 2016-09-21 2016-09-22 2016-09-23 2016-09-24 2016-09-25 2016-09-26 2016-09-27 2016-09-28 2016-09-29 2016-09-30 我不能用cal_days_in_month as I有一個日期範圍,必須計算所選日期之間的天數。
$ this_date = $一世? $ date_from1-> add($ interval):$ date_from1;沒有工作得到一個錯誤:在非對象上調用成員函數格式() – nkh
@nkh我在答案的底部添加了一個鏈接,以顯示我的代碼正在運行。您剛剛提到的錯誤不是由我的更改引起的。我在解決方案的任何地方都不使用'format()'函數。它來自代碼中的其他地方。 – BeetleJuice
我已經使用了你給出的代碼仍然沒有工作給我一個錯誤調用成員函數格式()在非對象 – nkh