1. 程式人生 > >php日期函式與php時間函式

php日期函式與php時間函式

checkdate : 驗證日期的正確性。
date : 將伺服器的時間格式化。
strftime : 將伺服器的時間本地格式化。
getdate : 獲得時間及日期資訊。
gettimeofday : 取得目前時間。
gmdate : 取得目前與 gmt 差後的時間。
easter_date : 計算復活節日期。
easter_days : 計算復活節與三月廿一日之間日期數。
mktime : 取得 unix 時間戳記。
gmmktime : 取得 unix 時間戳記的格林威治時間。
time : 取得目前時間的 unix 時間戳記。
microtime : 取得目前時間的 unix 時間戳記的百萬分之一秒值

checkdate
驗證日期的正確性。
語法: int checkdate(int month, int day, int year);
返回值: 整數
函式種類: 時間日期
內容說明 若日期是有效的則返回 true,若日期有問題,則返回 false。本函式可以用來檢查日期是否有效。有效範圍如下:
年 為 0 至 32767 年
月 為 1 至 12 月
日 則隨著月份及閏年變化

date
將伺服器的時間格式化。
語法: string date(string format, int [timestamp]);
返回值: 字串
函式種類: 時間日期
內容說明 返回值的 字串依配置的格式來決定。若有傳入時間戳記值,則將時間戳記格式化返回;若無傳入時間戳記值,則將目前伺服器的時間格式化返回。要將日期轉為其它的語系格式,應使用setlocale

() 及 strftime() 二個函式。字串格式化的選項如下:
a - "am" 或是 "pm" 
a - "am" 或是 "pm" 
d - 幾日,二位數字,若不足二位則前面補零; 如: "01" 至 "31" 
d - 星期幾,三個英文字母; 如: "fri" 
f - 月份,英文全名; 如: "january" 
h - 12 小時制的小時; 如: "01" 至 "12" 
h - 24 小時制的小時; 如: "00" 至 "23" 
g - 12 小時制的小時,不足二位不補零; 如: "1" 至 12" 
g - 24 小時制的小時,不足二位不補零; 如: "0" 至 "23" 
i - 分鐘; 如: "00" 至 "59" 
j - 幾日,二位數字,若不足二位不補零; 如: "1" 至 "31" 
l - 星期幾,英文全名; 如: "friday" 
m - 月份,二位數字,若不足二位則在前面補零; 如: "01" 至 "12" 
n - 月份,二位數字,若不足二位則不補零; 如: "1" 至 "12" 
m - 月份,三個英文字母; 如: "jan" 
s - 秒; 如: "00" 至 "59" 
s - 字尾加英文序數,二個英文字母; 如: "th","nd" 
t - 指定月份的天數; 如: "28" 至 "31" 
u - 總秒數 
w - 數字型的星期幾,如: "0" (星期日) 至 "6" (星期六) 
y - 年,四位數字; 如: "1999" 
y - 年,二位數字; 如: "99" 
z - 一年中的第幾天; 如: "0" 至 "365" 
其它不在上列的字元則直接列出該字元。

使用範例 
範例一:
print(date( "l ds of f y h:i:s a" ));
print("july 1, 2000 is on a " . date("l", mktime(0,0,0,7,1,2000)));
?>

範例二:
$tomorrow = mktime(0,0,0,date("m") ,date("d")+1,date("y"));
$lastmonth = mktime(0,0,0,date("m")-1,date("d"), date("y"));
$nextyear = mktime(0,0,0,date("m"), date("d", date("y")+1);
?>

參考 gmdate() mktime()

strftime
將伺服器的時間本地格式化。
語法: string strftime(string format, int [timestamp]);
返回值: 字串
函式種類: 時間日期
內容說明 返回值的字串依配置的格式來決定。若有傳入時間戳記值,則將時間戳記格式化返回;若無傳入時間戳記值,則將目前伺服器的時間本地格式化返回。月份或者星期名稱隨著本地語系配置 setlocale() 的不同而改變。

返回的字串可以依下列的格式而定:
%a 星期幾的縮寫。 
%a 星期幾的全名。 
%b 月份名稱的縮寫。 
%b 月份名稱的全名。 
%c 本地端日期時間較佳表示字串。 
%d 用數字表示本月的第幾天 (範圍為 00 至 31)。 
%h 用 24 小時制數字表示小時數 (範圍為 00 至 23)。 
%i 用 12 小時制數字表示小時數 (範圍為 01 至 12)。 
%j 以數字表示當年度的第幾天 (範圍為 001 至 366)。 
%m 月份的數字 (範圍由 1 至 12)。 
%m 分鐘。 
%p 以 ''am'' 或 ''pm'' 表示本地端時間。 
%s 秒數。 
%u 數字表示為本年度的第幾周,第一個星期由第一個週日開始。 
%w 數字表示為本年度的第幾周,第一個星期由第一個週一開始。 
%w 用數字表示本週的第幾天 ( 0 為週日)。 
%x 不含時間的日期表示法。 
%x 不含日期的時間表示法。 
%y 二位數字表示年份 (範圍由 00 至 99)。 
%y 完整的年份數字表示,即四位數。 
%z 時區或名稱縮寫。 
%% % 字元。 

使用範例 
setlocale ("lc_time", "c");
print(strftime("%a in finnish is "));
setlocale ("lc_time", "fi");
print(strftime("%a, in french "));
setlocale ("lc_time", "fr");
print(strftime("%a and in german "));
setlocale ("lc_time", "de");
print(strftime("%a.n"));
?>

參考 setlocale() mktime()

getdate
獲得時間及日期資訊。
語法: array getdate(int timestamp);
返回值: 陣列
函式種類: 時間日期
內容說明 返回陣列的元素包括下列的專案:
"seconds" - 秒 
"minutes" - 分 
"hours" - 時 
"mday" - 當月的第幾天 
"wday" - 當週的第幾天數字 
"mon" - 月份數字 
"year" - 年,數字 
"yday" - 當年的第幾天數字; 如: "299" 
"weekday" - 星期幾全名; 如: "friday" 
"month" - 月份全名; 如: "january"

gettimeofday
取得目前時間。
語法: array gettimeofday(void);
返回值: 陣列
函式種類: 時間日期
內容說明 返回陣列的元素包括下列的專案:
"sec" - 秒 
"usec" - 百萬分之一秒 
"minuteswest" - 格林威治時間的分 
"dsttime" - 目的的時區

gmdate
取得目前與 gmt 差後的時間。
語法: string gmdate(string format, int timestamp);
返回值: 字串
函式種類: 時間日期
內容說明 本函式與 date() 函式相似,不同的是本函式返回與格林威治標準時間 (greenwich mean time, gmt) 時間差後的時間

使用範例 
echo date( "m d y h:i:s",mktime(0,0,0,1,1,1998) );
echo gmdate( "m d y h:i:s",mktime(0,0,0,1,1,1998) );
?>
若執行本範例的機器在芬蘭 (finland, gmt +0200),返回的結果為:
jan 01 1998 00:00:00
dec 31 1997 22:00:00
參考 date() mktime() gmmktime()

easter_date
計算復活節日期。
語法: int easter_date(int [year]);
返回值: 整數
函式種類: 時間日期
內容說明 
輸入某一年份,則以 unix 時間戳記的格式返回該年的復活節日期,若沒有輸入年份,則計算當年的日期。值的 注意的是輸入的年份必需在公元 1970 至 2037 年之間,否則無法計算。 
使用範例 
echo date("m-d-y", easter_date(1999));
echo date("m-d-y", easter_date(2000));
echo date("m-d-y", easter_date(2001));
?>
返回結果為
apr-04-1999
apr-23-2000
apr-15-2001

easter_days
計算復活節與三月廿一日之間日期數。
語法: int easter_days(int [year]);
返回值: 整數
函式種類: 時間日期
內容說明 輸入某一年份,則以計算該年復活節與三月二十一日之間的日期數,若沒有輸入年份,則以當年計算。這個函式可以用來替代 easter_date() 1970-2037 年外範圍無法計算的問題。
使用範例 
echo easter_days(1999);
echo easter_days(1492);
echo easter_days(1913);
?>
返回結果為:
14 (4/4)
32 (4/22)
2 (3/23)
參考 easter_date()

mktime
取得 unix 時間戳記。
語法: int mktime(int hour, int minute, int second, int month, int day, int year);
返回值: 整數
函式種類: 時間日期 
內容說明 
輸入一個時間,則返回 unix 時間戳記的長整數。
使用範例 
echo date( "m-d-y", mktime(0,0,0,12,32,1997) );
echo date( "m-d-y", mktime(0,0,0,13,1,1997) );
echo date( "m-d-y", mktime(0,0,0,1,1,1998) );
?> 
參考 date() time()

gmmktime
取得 unix 時間戳記的格林威治時間。
語法: int gmmktime(int hour, int minute, int second, int month, int day, int year);
返回值: 整數
函式種類: 時間日期
內容說明 輸入一個時間,則返回 unix 的格林威治時間戳記的長整數。

time
取得目前時間的 unix 時間戳記。
語法: int time(void);
返回值: 整數
函式種類: 時間日期
內容說明 返回目前時間的戳記值。

參考 date()

microtime
取得目前時間的 unix 時間戳記的百萬分之一秒值。
語法: string microtime(void);
返回值: 字串
函式種類: 時間日期
內容說明 返回目前時間的百萬分之一秒戳記值。若作業系統沒有提供 gettimeofday() 的系統呼叫函式,則本函式亦無效。

相關推薦

出隨機數利用rand函式延遲時間函式

#include<stdio.h>#include<stdlib.h> #include<windows.h> void main() {  while(true)

php日期函式php時間函式

checkdate : 驗證日期的正確性。 date : 將伺服器的時間格式化。 strftime : 將伺服器的時間本地格式化。 getdate : 獲得時間及日期資訊。 gettimeofday : 取得目前時間。 gmdate : 取得目前與 gmt 差後的時間。 e

android時間戳轉換成日期php後臺),日期轉換成時間戳小問題記錄

之前常用的是,和java開發的後臺對接資料,正常也沒有遇到過這個問題,又一次在和php對接的後臺做專案是,時間轉換出了問題,我看了些許時間的程式碼,都沒有問題。最後發現返回時間戳的位數不對,才確認到,問題是出現在這裡 PHP和Java時間戳存在三位位差!!!

建構函式解構函式的呼叫時間

    建構函式與解構函式是被編譯器隱式呼叫的。這些函式的呼叫時間取決於程式執行進入和離開例項化物件的作用域的順序。通常,解構函式的呼叫順序和對應建構函式的呼叫順序相反。但是,物件的儲存類別可以改變解構函式的呼叫順序。    在全域性作用域內定義的建構函式在該檔案中任何其他函

Linux-rhel6.4 編譯安裝PHP,Nginxphp連接

linux php rhel 編譯安裝php 連接nginx 確定依賴包安裝gcc gcc-c++ libxml2 libxml2-devel bzip2 bzip2-devel libmcrypt libmcrypt-devel openssl openssl-devel libcurl

SQL Server排名函式排名開窗函式

什麼是排名函式?說實話我也不甚清楚,我知道 order by 是排序用的,那麼什麼又是排名函式呢? 接下來看幾個示例就明白了。 首先建立一個表,隨便插入一些資料。 ROW_NUMBER 函式:直接排序,ROW_NUMBER函式是以上升進行直接排序,並且以連續的順序給每一行資料一個唯一的序號。(即排名

SQL Server聚合函式聚合開窗函式

以下面這個表的資料作為示例。 什麼是聚合函式? 聚合函式:聚合函式就是對一組值進行計算後返回單個值(即分組)。聚合函式在計算時都會忽略空值(null)。 所有的聚合函式均為確定性函式。即任何時候使用一組相同的輸入值呼叫聚合函式執行後的返回值都是相同的,無二義性。 COUNT(統計函式):COUNT

C++ 虛解構函式解構函式的區別

先看下面程式碼: class Parent { public: Parent(); ~Parent(); }; Parent::Parent() { cout << "基類構造...." << endl << endl; } Parent::

虛解構函式純虛擬函式

虛解構函式 通過基類的指標刪除派生類物件時,通常情況只調用基類的解構函式 但是,刪除一個派生類物件時,應該先呼叫派生類的解構函式,然後呼叫基類的解構函式(構造時自頂向下,析構時自底向上) 這種情況會產生記憶體洩漏,最終導致系統應可用記憶體不足而崩潰 解決辦法 把基類的解構函式宣告為virtual,此

【轉載】鉤子函式回撥函式

在訊息處理機制中必不可少的一組CP,即回撥和鉤子。 鉤子的概念源於Windows的訊息處理機制,通過設定鉤子,應用程式可以對所有的訊息事件進行攔截,然後執行鉤子函式,對訊息進行想要的處理方式。 接下來是一段js程式碼,主要用於給btn設定點選的鉤子函式。 let btn = document.getEl

C++(建構函式解構函式

C++(建構函式與解構函式) 1. 建構函式 用於對類的物件的初始化,建構函式名與類名相同。 可在類內直接定義,也可在類內宣告類外定義(定義時在函式名前加類名::)。 建構函式無返回值型別。 class C { public: C(int a,int b);//類

Java的建構函式解構函式(筆記1)

已Mydate為例: package text1; public class MyDate { int year; int month; int day; //1.建構函式 public MyDate(int y,int m,int d) { year = y; mon

SQLServer 表值函式標量值函式 定義方式呼叫區別

SQLServer 表值函式與標量值函式 定義方式與呼叫區別 轉載自:http://blog.sina.com.cn/s/blog_648861b901012ay2.html SQLServer 

python中閉包函式裝飾器函式

閉包 首先知道閉包函式的語法特徵: 函式巢狀定義 外部函式返回內部函式的引用 內部函式可以呼叫外部函式的自由變數 外部函式的作用是建立內部函式並且返回內部函式的引用。 def line(k, b): """外部函式的作用: 建立內部函式並且返回內部函式的引用

《C++反彙編逆向分析技術揭祕》讀書總結——建構函式解構函式

建構函式的必要條件: 這個函式的呼叫,是這個物件在作用域內的第一次成員函式呼叫,看this指標即可以區分物件,是哪個物件的this指標就是哪個物件的成員函式。 使用thiscall呼叫方式,使用ecx傳遞this指標; 返回值為this指標。 解構函式的必要條件: 這

PCB MS SQL 標量函式表值函式(CLR) 實現檔案目錄操作 PCB 工程系統 模擬windows域帳號登入

 一.C#寫SQL SERVER(CLR)實現檔案操作  標量函式: 檔案移動 ,複製,檢測檔案存在,寫入新檔案文字,讀取文字,建立目錄,刪除目錄,檢測目錄是否存在 /// <summary> /// 將現有檔案複

C++知識積累:運算子過載時建構函式解構函式呼叫次數不一致的問題

在學習運算子過載的時候自己寫了這樣一段程式: class Stu { public: Stu() { std::cout<<"Stu No parameter constructor called!"<<

單繼承派生類建構函式解構函式順序

派生類建構函式形式: 派生類建構函式 (引數表):基類建構函式(引數表) 類物件成員1(引數表)... 類物件成員n(引數表)//只能用表示式的方式對類物件成員進行初始化 {...派生類自定義的資料成員初始化} 在派生類中,首先呼叫基類的建構函式,其次呼叫

【C++學習筆記】 虛擬函式純虛擬函式概念

源至:https://blog.csdn.net/hackbuteer1/article/details/7558868 虛擬函式:定義一個函式為虛擬函式,不代表函式為不被實現的函式,定義他為虛擬函式是為了允許用基類的指標來呼叫子類的這個函式。(注意:子類中非基類虛擬函式不能被基類呼叫) 純虛擬

oracle中日期型別unix 時間戳的轉換

Unix時間戳記是從'1970-01-01 00:00:00'GMT開始的秒數,表現為整數型。 Oracle中的時間是Date型,以下函式提供了兩種時間轉換的Oracle函式 (1)從Unix時間戳記轉換為Oracle時間 create or replace function