Unix 時間戳:php
自從 Unix 紀元(格林威治時間 1970 年 1 月 1 日 00:00:00)到當前時間的秒數 .數組
相關函數:函數
time() --- 函數返回一個當前系統的時間戳code
mktime( ) --- 取得一個日期的 Unix 時間戳orm
格式:int mktime(時[,分[,秒[,月[,日[,年[,is_dst區]]]]]]);字符串
注意:is_dst參數表示是否爲夏時制,PHP5.10後此參數已廢除。get
strtotime( ) --- 將任何英文文本的日期時間描述解析爲 Unix 時間戳string
格式:int strtotime ( string $time [, int $now ] )form
案例:class
//系統時間戳 echo "當前系統的時間戳:".time(); //秒數 //mktime -- 給我一個年月日時分秒,我返還給你一個時間戳,用的很是少 echo "獲取指定日期2033-2-12的時間戳:".mktime(0,0,0,2,12,2033); //strtotime() -- 若是使用也是用這個 echo "獲取指定日期2034-1-1的時間戳:".strtotime('2034-1-1'); echo "獲取3天前的時間戳:".strtotime('-3 day'); echo "獲取3天后的時間戳:".strtotime('3 day');
getdate -- 取得日期/時間信息。
格式:array getdate ( [int timestamp] )
返回一個根據 timestamp 得出的包含有日期信息的結合數組。若是沒有給出時間戳則認爲是當前本地時間。
//getdate --- 獲取日期/時間信息 $date = getdate();//當前日期信息 //$date = getdate(234456768);//獲取指定時間戳的日期信息 echo "<pre>";//格式化輸出 print_r($date);//打印時間數組
date -- 格式化一個本地時間/日期。
格式:string date ( string format [, int timestamp] )
返回將整數 timestamp 按照給定的格式字串而產生的字符串。若是沒有給出時間戳則使用本地當前時間。換句話說,timestamp 是可選的,默認值爲 time()(當前時間戳)。
例如: echo date(「Y年m月d日 H:i:s」); //2010年10月28日 14:22:28
經常使用參數:
Y:四位數年 m:月01-12 n:月1-12 d:天01-31 j:天1-31
H:時24時制 h:小時12制 i:分鐘00-59 s:秒00-59 w:星期幾0-6
A:上午AM或下午PM a:上午am或下午pm。
案例:
//date --- 格式化一個本地時間/日期 echo date("Y年m月d",time()); echo date("Y/m/d",time()); echo date("Y-m-d H:i:s");//不寫第二個參數默認是當前時間戳
修改PHP的默認時區有兩種方式:
一、修 php.ini 配置文件:date.timezone = PRC
二、date_default_timezone_set( ): -- 設定用於一個腳本中全部日期時間函數的默認時區 。
如:date_default_timezone_set(「PRC」); //中國時區。
三、date_default_timezone_get( ): -- 獲取當前時區
案例:
date_default_timezone_set('PRC');//設置中國時區 //date --- 格式化一個本地時間/日期 echo date("Y年m月d",time()); echo date("Y/m/d",time()); echo date("Y-m-d H:i:s");//不寫第二個參數默認是當前時間戳
1毫秒(ms) = 0.001秒(s)
1微秒(μs) = 0.001毫秒(ms)
1納秒(ns) = 0.001微秒(μs)
microtime -- 返回當前 Unix 時間戳和微秒數
格式:mixed microtime ( [bool get_as_float] )
microtime() 當前 Unix 時間戳以及微秒數。
若是調用時不帶可選參數,本函數返回一個字符串,其中後者是自 Unix 紀元(0:00:00 January 1, 1970 GMT)起到如今的秒數,前者 是微秒部分。
若是給出了參數而且其值等價於 TRUE,microtime() 將返回一個截取爲小數點4帶秒數爲浮點數。
$start = microtime(true); for($i=1;$i<10000;$i++) { $tmp = 13333/234; } $end = microtime(true); echo $end - $start;