php日期轉換int類型

巴扎黑
發布: 2016-11-23 11:40:27
原創
2154 人瀏覽過

 $a="2001-5-2"; 
   $date = explode('-',$a); 
   // explode依照'-'來分割字串,將分割後的資料放入陣列中,即$date 
   // $date[0] = 1997,$date[1] = 3,$date[2] = 2 
   $timestamp = mktime(0,0,0,$date[1],$date [2],$date[0]); 
   

   echo $timestamp+(3600*8)."
";//時間差8小時計算 
:   //echo date('Y-m' $timestamp).'
'; 
   
   echo date('Y-m-d h:i:s',$timestamp).'
'; //h:i:s 12小時 
'Y/m/d H:i:s',$timestamp+(3600*24)); //日期計算 
範例1. time() 範例 

[color=Green]$nextWeek = time( ) + (7 * 24 * 60 * 60); 
// 7 days; 24 hours; 60 mins; 60secs 
echo 'Now: '. date('Y-m-d') ."n";echo 'Now: '. date('Y-m-d') ."n"; : '. date('Y-m-d', $nextWeek) ."n"; 
?> 

上例的輸出類似: 

Now: 2005-03-30 
Next
Now: 2005-03-30 
Next
Now: 2005-03-30 Week: 2005-044-005


PHP 日期轉換 
MySQL 在資料庫時間格式方面,最主要常見的兩種儲存方式,一種就是MySQL 預設datetime,顯示的格式就會像是2009-11-03 20:10:43,另一種就是存成UNIX time 格式,可以設定為int(11),這兩種其實都可以使用,在phpBB2 是採用後者的方式,因為open source 要支援多種資料庫,但又要統一程式碼,所以乾脆用UNIX 的時間標記,這樣比較好轉換時區,如果使用UNIX 格式,可以利用time() 函式來取的。


# 得到目前系統UNIX 時間 
echo time(); 
# 下個禮拜時間 
$nextWeek = time() + (7 * 24 * 60 * 60);  60); ; 60secs 
# 另一種可以用mktime 來取得系統UNIX 時間 
# 今天日期的UNIX 時間 
echo mktime(0,0,0, date("Y"),date("m"),date("d ")); 
所以我們可以存放到mysql 資料庫,利用time() 來INSERT,接下來如何顯示時間:date() 函數 

# 利用date() 函數 
$time = time(); 
echo date("Y-m-d H:i:s", $time); 
$nextWeek = time() + (7 * 24 * 60 * 60); 
echo date("Y-m-d H:i:s", $nextWeek)
echo date("Y-m-d H:i:s", $nextWeek)
echo date("Y-m-d H:i:s", $nextWeek)
echo date("Y-m-d H:i:s", $nextWeek) ; 
如果資料庫格式用datetime,那取出來的值必定是Y-m-d H:i:s 格式,那如何轉成UNIX time 呢,可以用strtotime 


# 將標準時間放入第一參數 
echo strtotime("2009-10-10 20:22:10"); 
echo strtotime("now"); 
結論是 

1. 如果資料庫用int(11),就利用date(), mktime(1. 如果資料庫用int(11),就利用date(), mktime(), time() 轉換成時間格式 🎜2. 如果資料庫用datetime,就利用strtotime() 轉換成UNIX time 來做日期相加減 🎜
相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
最新問題
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板