在 WordPress 的開發中,經常會需要使用時間,比如定時任務、設置時間等等。

下邊我會介紹一些有關時間的函數和常量,來幫助你進行相關的開發。

獲取當前時間

在 PHP 中,獲取當前時間需要使用 time() 函數,而在 WordPress 中卻不是。

因為 WordPress 有一套相應的時區系統,所以獲取當前的時間需要使用它提供的 current_time() 函數。

current_time() 函數接收兩個參數 current_time( $type, $gmt ),下邊是參數介紹:

  • $type(必須):獲取時間的類型,可選 mysql(用於數據庫儲存的時間) 、 timestamp(時間戳) 和自定義的時間格式
  • $gmt(可選):返回格林尼治標準時間 (GMT) 還是設置的時區的時間 (在後台 「設置」 的  「常規」 裏設置) 。如果設置成 True 則為本地時間,False 為 GMT 時間

獲取當前的時間戳:

1

echocurrent_time('timestamp');

獲取當前時間,然後儲存到數據庫裏:

1

$wpdb->query($wpdb->prepare("INSERT INTO `$wpdb->options` ( `option_name`, `option_value`, `autoload` ) VALUES ( %s, %s )",'current_time',current_time('mysql'));

獲取自定義格式的 GMT 時間:

1

echocurrent_time('Y 年 m 月 d 日 H-i-s',true);

秒數時間常量

在設置一些時間的時候,經常會使用秒來表示時間,時間都需要我們去計算,是非常麻煩的。

WordPress 提供了一些有關秒數的常量,非常實用。

$seconds=MINUTE_IN_SECONDS;//一分鐘的秒數

$seconds=HOUR_IN_SECONDS;//一小時的秒數

$seconds=DAY_IN_SECONDS;//一天 (24 小時) 的秒數

$seconds=WEEK_IN_SECONDS;//一週的秒數

$seconds=YEAR_IN_SECONDS;//一年的秒數

以後遇到需要使用這些時間的時候直接用這個常量就可以了,非常方便。