頁:
[1]
怎摸把入住日期與退房時間內的日期叫出來?
因為從訂房網站下載的資料是給入住區間 ex: 入住 and 退房時間而我自己寫的php網站是每天每間一筆資料在儲存
我想把訂房網站的資料匯入我的資料庫的話,需要怎摸做?
例如:
訂房網站的資料是
2015-08-12 入住 / 2015-08-15 退房
要匯入我的資料庫需要 2015-08-12, 2015-08-13, 2015-08-14, 三天的形式
目前只知道要先把字串轉成日期的形式,接下來就不知了
$checkin="2015-08-12";
$d=explode("-",$checkin);
$date=date("$d-$d-$d");
...<div class='locked'><em>瀏覽完整內容,請先 <a href='member.php?mod=register'>註冊</a> 或 <a href='javascript:;' onclick="lsSubmit()">登入會員</a></em></div><div></div> 入住多天應該不用寫多筆吧
你可以寫入住時間 AND 退房時間
若真的到時需要所有天數再寫一隻程式來轉都還來的及
你要先確認你資料格式的運用~
想做到什麼功能~這樣會比較有方向 我試了一下 for迴圈,當我$checkin="2015-08-30";
可以區間的日期跑出來,不過當
$checkin="2015-09-01";
就gg了,我就覺得用這樣的寫法跨月好像會有問題
程式碼如下
-------------------------
$today=date("Y-m-d");
$checkin="2015-09-01";
$d=explode("-",$checkin);
$date=date("$d-$d-$d");
for ($a=$today; $a<$date; $a++){
echo $a."<br>";
}
我這邊有個小建議,我個人在處理時間時,我都是用 time() 這個數值,對應到 MySQL 欄位可以使用 BIGINT UNSIGNED 來使用。然後至於字串怎麼轉到這個數值呢!我都是用 strtotime( "時間文字" )!至於轉到這個東西有啥好處捏,就是可以在資料庫中直接當作一般數字來比,這樣方便多了。
舉例來說:我要找 2015/10/19 00:00:00 要入住的名單,我就只要
$time = strtotime( "2015/10/19 00:00:00 +0800" );
$sql = "SELECT * FROM `booking` WHERE `bookingTime` <= {$time}"
然後把 sql 送去 query 就可以了,這邊不需要擔心 sql injection,因為 strtotime 不是 0 就是正整數。...<div class='locked'><em>瀏覽完整內容,請先 <a href='member.php?mod=register'>註冊</a> 或 <a href='javascript:;' onclick="lsSubmit()">登入會員</a></em></div> 你是想要把兩個時間前中間的每一天都叫出來對吧?
那在PHP上只要找到兩天中間的差,然後一天一天的列出來就好了
兩個關鍵字,可以自己去查:
$in_date->diff($out_date);
$in_date->modify('+1 day');<br><br><br><br><br><div></div> $date1="2015-05-03";
$time = date("Y-m-d",strtotime( $date1."+1 day" );//加一天
$time2 = date("Y-m-d",strtotime( $date1."+2 day" );//加二天
頁:
[1]