在PHP中我們使用
strotime()函數可以將任何英文文本的日期和時間解析為UNIX時間戳記。它的文法如下:
strotime()函數文法格式
strtotime(time,now);
其值是相對於參數now給出的時間,如果沒有提供此參數now則用系統目前時間。
參數詳解:
該函數有兩個參數
time
被解析的字串,格式根據 GNU » 日期輸入格式 的文法。在 PHP 5.0 之前,time 中不允許有毫秒數,自 PHP 5.0 起可以有但是會被忽略掉。
now
用來計算傳回值的時間戳記。 該參數預設值是目前時間time(),也可以設定為其他時間的時間戳記()
傳回值: 成功則返回間戳,否則返回 FALSE 。在 PHP 5.1.0 之前本函數在失敗時返回 -1,後面版本返回false.
strtotime的第一個參數可以是我們常見的英文時間格式,比如“2008-8-20”或“10 September 2000 ”等等。也可以是以參數now為基準的時間描述,比如“+1 day”等等。
strotime()函數執行個體
執行個體一
使用strotime()函數擷取指定日期的unix時間戳記,代碼如下
<?phpecho strtotime("2017-4-10");?>
運行結果:
執行個體說明:返回2017年4月10日0點0分0秒時間戳記
執行個體二
本執行個體應用strotime()函數擷取英文格式日期時間字串的UNIX時間戳記,並將部分時間輸出,執行個體代碼如下
<?phpheader("Content-type:text/html;charset=utf-8"); //設定編碼echo strtotime("now")." "; //目前時間的時間戳記echo "輸出時間:".date("Y-m-d H:i:s",strtotime("now"))."<br/>"; //輸出目前時間echo strtotime("10 May 2017")." "; //輸出指定日期的時間戳記echo "輸出時間:".date("Y-m-d H:i:s",strtotime("10 May 2017"))."<br/>"; //輸出指定日期的時間echo strtotime("+3 day")." "; //輸出目前時間三天后的時間戳記echo "輸入三天后的時間:".date("Y-m-d H:i:s",strtotime("+3 day"))."<br/>";echo strtotime("+1 week")." ";echo "輸出下個星期此時的時間:".date("Y-m-d H:i:s",strtotime("+1 week"))."<br/>";echo strtotime("+1 week 2 days 3 hours 4 seconds")."<br/>";echo strtotime("NEXT Thursday")."<br/>";echo strtotime("last Monday");?>
代碼運行結果:
上面就是我們strotime()函數完成的簡易功能。下一節,將通過我們前面學習的幾個時間函數,有我們的mktime()函數獲得本地時間戳記,time()函數擷取目前時間戳,date()函數擷取當前日期和時間,getdate()函數擷取日期資訊和checkdate()函數檢驗日期的有效性等,通過這些函數,來完成我們對日期和時間的應用。