PHP時(shí)間處理類(lèi)操作示例
本文實(shí)例講述了PHP時(shí)間處理類(lèi)操作。分享給大家供大家參考,具體如下:
php中的幾個(gè)時(shí)間處理類(lèi):DateTime,DateTimeZone,DateInterval,DatePeriod。
- DateTime :時(shí)間類(lèi)
- DateTimeZone:時(shí)區(qū)內(nèi)
- DateInterval:表示一段時(shí)間間隔,它是時(shí)間對(duì)象做加減法的單位。
- DatePeriod:表示一段時(shí)間集合。結(jié)合DateInterval可對(duì)集合內(nèi)的時(shí)間遍歷處理。
下面是這幾個(gè)類(lèi)的具體使用例子:
<?php
function showTimeObj($msg,$timeObj)
{
//使用預(yù)定義的格式來(lái)轉(zhuǎn)換時(shí)間字符串
if ($msg!=NULL)
{
echo $msg.":";
echo "<br>".$timeObj->format(DATE_W3C)."<br>";
}
else
{
echo $timeObj->format(DATE_ATOM)."<br>";
}
}
try
{
//設(shè)置時(shí)區(qū)
$timezones = new DateTimeZone('Asia/Shanghai');
//獲取當(dāng)前時(shí)間
$timeObj=new DateTime("now",$timezones);
}
catch (Exception $e)
{
echo $e->getMessage();
}
//輸出的+08:00代表東八區(qū)、若把時(shí)區(qū)設(shè)為'Asia/Tokyo',則為+09:00
showTimeObj('current time',$timeObj);
echo "<br>"."<br>";
echo "use DateInterval object to add date time".":"."<br>";
//加上一天(P=period,必備)
$timeObj->add(new DateInterval('P1D'));
showTimeObj('current time + 1 day',$timeObj);
//加上一小時(shí)(T=time,可選)
$timeObj->add(new DateInterval('P0DT1H'));
showTimeObj('current time + 1 day & 1hour',$timeObj);
echo "<br>"."<br>";
echo "use DatePeriod to process time range like a iterator".":"."<br>";
//DatePeriod: 迭代處理區(qū)間內(nèi)的日期
$interval= new DateInterval('P0DT2H');
$start = new DateTime('2018-08-08',$timezones);
$end = new DateTime('2018-08-09',$timezones);
$timeRange = new DatePeriod($start,$interval,$end);
foreach ($timeRange as $hour)
{
showTimeObj(NULL,$hour);
}
?>
上述代碼運(yùn)行結(jié)果:
current time:
2018-09-04T15:23:46+08:00
use DateInterval object to add date time:
current time + 1 day:
2018-09-05T15:23:46+08:00
current time + 1 day & 1hour:
2018-09-05T16:23:46+08:00
use DatePeriod to process time range like a iterator:
2018-08-08T00:00:00+08:00
2018-08-08T02:00:00+08:00
2018-08-08T04:00:00+08:00
2018-08-08T06:00:00+08:00
2018-08-08T08:00:00+08:00
2018-08-08T10:00:00+08:00
2018-08-08T12:00:00+08:00
2018-08-08T14:00:00+08:00
2018-08-08T16:00:00+08:00
2018-08-08T18:00:00+08:00
2018-08-08T20:00:00+08:00
2018-08-08T22:00:00+08:00
PS:這里再為大家推薦幾款時(shí)間及日期相關(guān)工具供大家參考:
在線日期/天數(shù)計(jì)算器:
http://tools.jb51.net/jisuanqi/date_jisuanqi
在線日期計(jì)算器/相差天數(shù)計(jì)算器:
http://tools.jb51.net/jisuanqi/datecalc
在線日期天數(shù)差計(jì)算器:
http://tools.jb51.net/jisuanqi/onlinedatejsq
Unix時(shí)間戳(timestamp)轉(zhuǎn)換工具:
http://tools.jb51.net/code/unixtime
更多關(guān)于PHP相關(guān)內(nèi)容感興趣的讀者可查看本站專(zhuān)題:《php日期與時(shí)間用法總結(jié)》、《PHP數(shù)組(Array)操作技巧大全》、《PHP基本語(yǔ)法入門(mén)教程》、《PHP運(yùn)算與運(yùn)算符用法總結(jié)》、《php面向?qū)ο蟪绦蛟O(shè)計(jì)入門(mén)教程》及《php字符串(string)用法總結(jié)》
希望本文所述對(duì)大家PHP程序設(shè)計(jì)有所幫助。
- php日期轉(zhuǎn)時(shí)間戳,指定日期轉(zhuǎn)換成時(shí)間戳
- 非常全面的php日期時(shí)間運(yùn)算匯總
- 使用PHP的日期與時(shí)間函數(shù)技巧
- PHP中UNIX時(shí)間戳和日期間的轉(zhuǎn)換與計(jì)算實(shí)例
- PHP函數(shù)之日期時(shí)間函數(shù)date()使用詳解
- 解析php時(shí)間戳與日期的轉(zhuǎn)換
- php格式化日期和時(shí)間格式化示例分享
- PHP中Date()時(shí)間日期函數(shù)的使用方法小結(jié)
- php計(jì)算兩個(gè)日期時(shí)間差(返回年、月、日)
- php獲取指定日期之間的各個(gè)周和月的起止時(shí)間
- PHP 時(shí)間日期操作實(shí)戰(zhàn)
相關(guān)文章
php獲得文件大小和文件創(chuàng)建時(shí)間的方法
這篇文章主要介紹了php獲得文件大小和文件創(chuàng)建時(shí)間的方法,涉及php中filesize及fileatime函數(shù)的使用技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2015-03-03
php倒計(jì)時(shí)出現(xiàn)-0情況的解決方法
這篇文章主要介紹了php倒計(jì)時(shí)出現(xiàn)-0情況的解決方法,實(shí)例分析了php倒計(jì)時(shí)程序出現(xiàn)-0的原因及相應(yīng)的解決方法,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2016-07-07
PHP實(shí)現(xiàn)ASCII碼與字符串相互轉(zhuǎn)換的方法
這篇文章主要介紹了PHP實(shí)現(xiàn)ASCII碼與字符串相互轉(zhuǎn)換的方法,涉及php字符串的遍歷、替換、編碼轉(zhuǎn)換等相關(guān)操作技巧,需要的朋友可以參考下2017-04-04
PHP 常用數(shù)組內(nèi)部函數(shù)(Array Functions)介紹
本章節(jié)我們還要學(xué)習(xí)一些其它常用的有關(guān)數(shù)組的內(nèi)部函數(shù):count,sizeof、sort、asort、ksort等等,感興趣的朋友可以參考下哈,希望對(duì)大家有所幫助2013-06-06
php中的動(dòng)態(tài)調(diào)用實(shí)例分析
這篇文章主要介紹了php中的動(dòng)態(tài)調(diào)用的使用技巧,實(shí)例分析了動(dòng)態(tài)調(diào)用的具體用法與注意事項(xiàng),需要的朋友可以參考下2015-01-01
PHP中的數(shù)組處理函數(shù)實(shí)例總結(jié)
這篇文章主要介紹了PHP中的數(shù)組處理函數(shù),結(jié)合實(shí)例形式總結(jié)分析了常見(jiàn)的PHP數(shù)組處理函數(shù)功能,定義及使用技巧,代碼備有詳盡的注釋便于理解,需要的朋友可以參考下2016-01-01
PHP 文件上傳進(jìn)度條的兩種實(shí)現(xiàn)方法的代碼
PHP 文件上傳進(jìn)度條的兩種實(shí)現(xiàn)方法的代碼...2007-11-11
解析用PHP讀寫(xiě)音頻文件信息的詳解(支持WMA和MP3)
本篇文章是對(duì)PHP讀寫(xiě)音頻文件信息的詳細(xì)分析介紹。需要的朋友參考下2013-05-05
PHP實(shí)現(xiàn)的防止跨站和xss攻擊代碼【來(lái)自阿里云】
這篇文章主要介紹了PHP實(shí)現(xiàn)的防止跨站和xss攻擊代碼,是一款來(lái)自阿里云的防注入腳本,可實(shí)現(xiàn)針對(duì)注入、XSS攻擊等的過(guò)濾功能,需要的朋友可以參考下2018-01-01
解析關(guān)于wamp啟動(dòng)是80端口被占用的問(wèn)題
本篇文章是對(duì)關(guān)于wamp啟動(dòng)是80端口被占用的問(wèn)題(win7系統(tǒng)下WAMP 80端口被Microsoft-HTTPAPI/2.0占用的解決辦法)進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下2013-06-06

