,我有以下數據在我的表序貫合併日期
我想結合轉變日期shift_id
的基礎上。
總之我想下面的輸出:
**output format : FromDate To ToDate (Shift_id)**
2012-12-01 To 2012-12-02 (2)
2012-12-03 (1)
2012-12-04 (2)
2012-12-18 To 2012-12-20 (1)
2012-12-21 To 2012-12-22 (2)
2012-12-23 To 2012-12-24 (1)
2012-12-25 To 2012-12-30 (2)
我試過幾件事情,但沒有運氣。任何人請幫助/指導我解決這個問題。
我寫了這個代碼
while($row_shift = mysql_fetch_object($result_shift)) {
$new_date = $row_shift->shift_date;
$new_shift = $row_shift->shift_id;
if($new_shift !== $old_shift) {
$shift_name = $new_shift;
$shift_date_1 = date('D d M',strtotime($new_date))." (".$shift_name.")";
} else {
$shift_name = $old_shift;
$shift_date_1 = date('D d M',strtotime($old_date))." (".$shift_name.")";
$diff = abs(floor((strtotime($new_date) - strtotime($old_date))/3600/24));
if($diff == 1) {
$to_part = ' To ';
$shift_date_2 = date('D d M',strtotime($new_date))." (".$shift_name.")";
} else {
$to_part = ' To ';
$shift_date_2 = date('D d M',strtotime($old_date))." (".$shift_name.")";
}
}
$s_d_2 = $to_part.$shift_date_2;
$shift_date[] = $shift_date_1.$s_d_2;
$old_date = $row_shift->shift_date;
$old_shift = $row_shift->shift_id;
}
echo implode("<br/>", $shift_date);
這個代碼的輸出是
Output :
Sat 01 Dec (2)
Sat 01 Dec (2) To Sun 02 Dec (2)
Mon 03 Dec (1)Sun 02 Dec (2)
Tue 04 Dec (2)Sun 02 Dec (2)
Tue 18 Dec (1)Sun 02 Dec (2)
Tue 18 Dec (1) To Wed 19 Dec (1)
Wed 19 Dec (1) To Thu 20 Dec (1)
Fri 21 Dec (2)Thu 20 Dec (1)
Fri 21 Dec (2) To Sat 22 Dec (2)
Sun 23 Dec (1)Sat 22 Dec (2)
Sun 23 Dec (1) To Mon 24 Dec (1)
Tue 25 Dec (2)Mon 24 Dec (1)
Tue 25 Dec (2) To Wed 26 Dec (2)
Wed 26 Dec (2) To Thu 27 Dec (2)
Thu 27 Dec (2) To Fri 28 Dec (2)
Fri 28 Dec (2) To Sat 29 Dec (2)
Sat 29 Dec (2) To Sun 30 Dec (2)
感謝。
,你所面對的問題,您應該解釋一下,什麼你已經嘗試 –
這使用循環是相當容易的。只需從數據庫中獲取日期並在for或foreach循環中迭代它們即可。 –
@SashiKant我更新了我的問題。 –