UNIX時間戳和格式化日期是我們常打交道的兩個時間表示形式,Unix時間戳存儲、處理方便,但是不直觀,格式化日期直觀,但是處理起來不如Unix時間戳那麼自如,所以有的時候需要互相轉換,下面給出PHP日期轉時間戳記、MySQL日期轉換函數互相轉換的幾種轉換方式。
寫過PHP+MySQL的程式設計師都知道有時間差,UNIX時間戳和格式化日期是我們常打交道的兩個時間表示形式,Unix時間戳存儲、處理方便,但不直觀,格式化日期直觀,但處理起來不如Unix時間戳那麼自如,所以有的時候需要互相轉換,下面給出互相轉換的幾種轉換方式。
這種方式在MySQL查詢語句中轉換,優點是不佔用PHP解析器的解析時間,速度快,缺點是只能用在資料庫查詢中,有限制。
1、 UNIX時間戳轉換為日期用函數: FROM_UNIXTIME()
#一般形式:select FROM_UNIXTIME(1156219870);
2、日期轉換為UNIX時間戳用函數: UNIX_TIMESTAMP()
一般形式:Select UNIX_TIMESTAMP('2006-11-04 12:23:00′);
#舉例:mysqlsql查詢當天的記錄數:
$sql=”select * from message Where DATE_FORMAT(FROM_UNIXTIME(chattime),'%Y-%m-%d') = DATE_FORMAT(NOW(),'%Y-%m-%d') order by id desc”;
當然大家也可以選擇在PHP中轉換,以下說說在PHP中轉換。
這種方式在PHP程式中完成轉換,優點是無論是不是資料庫中查詢所獲得的資料都能轉換,轉換範圍不受限制,缺點是佔用PHP解析器的解析時間,速度相對慢。
1、UNIX時間戳轉換為日期用函數: date()
一般形式:date('Y-m-d H:i:s', 1156219870);
#2、日期轉換為UNIX時間戳記用函數:strtotime()
一般形式:strtotime('2010-03-24 08:15:42');
php日期轉時間戳記,指定日期轉換成時間戳
php日期轉時間戳、指定日期轉換成時間戳,PHP定時任務。
這兩天要實現這樣功能:
當達到某一條件時,讓伺服器發短信給用戶,數量為多條。
基本想法:linux 定時掃描,若有符合條件的用戶,則發送簡訊。
但為了防止打擾到用戶,要求只能在白天8:00-20:00發送短信,怎麼樣獲得到每天的這段時間區間?
如下程式碼:
程式碼如下:
<?$y=date("Y",time());$m=date("m",time());$d=date("d",time());$start_time = mktime(9, 0, 0, $m, $d ,$y);$end_time = mktime(19, 0, 0, $m, $d ,$y);$time = time();if($time >= $start_time && $time <= $end_time) {// do something.... } ?>
相關推薦:
以上是PHP時間戳記與日期轉換實例分享的詳細內容。更多資訊請關注PHP中文網其他相關文章!