php日期轉時間戳,指定日期轉換成時間戳

jopen 9年前發布 | 25K 次閱讀 PHP開發 PHP

UNIX時間戳和格式化日期是我們常打交道的兩個時間表示形式,Unix時間戳存儲、處理方便,但是不直觀,格式化日期直觀,但是處理起來不如Unix時間戳那么自如,所以有的時候需要互相轉換,下面給出PHP日期轉時間戳、MySQL日期轉換函數互相轉換的幾種轉換方式

寫過PHP+MySQL的程序員都知道有時間差,UNIX時間戳和格式化日期是我們常打交道的兩個時間表示形式,Unix時間戳存儲、處理方便,但是不直觀,格式化日期直觀,但是處理起來不如Unix時間戳那么自如,所以有的時候需要互相轉換,下面給出互相轉換的幾種轉換方式。

一、在MySQL中完成

這種方式在MySQL查詢語句中轉換,優點是不占用PHP解析器的解析時間,速度快,缺點是只能用在數據庫查詢中,有局限性。

  1. UNIX時間戳轉換為日期用函數: FROM_UNIXTIME()
    一般形式:select FROM_UNIXTIME(1156219870);
  2. 日期轉換為UNIX時間戳用函數: UNIX_TIMESTAMP()
    一般形式:Select UNIX_TIMESTAMP('2006-11-04 12:23:00′);
    舉例:mysql查詢當天的記錄數:
    $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程序中完成轉換,優點是無論是不是數據庫中查詢獲得的數據都能轉換,轉換范圍不受限制,缺點是占用PHP解析器的解析時間,速度相對慢。
  3. UNIX時間戳轉換為日期用函數: date()
    一般形式:date('Y-m-d H:i:s', 1156219870);
  4. 日期轉換為UNIX時間戳用函數:strtotime()
    一般形式:strtotime('2010-03-24 08:15:42');

    php日期轉時間戳,指定日期轉換成時間戳

    php日期轉時間戳、指定日期轉換成時間戳,PHP定時任務。
    這兩天要實現這樣功能:
    當達到某一條件時,讓服務器發短信給用戶,數量為多條。
    基本思路:linux 定時掃描,若有滿足條件的用戶,則發送短信。
    但為了防止打擾到用戶,要求只能在白天8:00-20:00發送短信,怎么樣獲得到每天的這段時間區間?
    如下代碼: </p>
    代碼如下:

    <?
    $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....
    }
    ?>

 本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!