PHP時間類完整代碼實例
開發(fā)中,經(jīng)常用到時間的一些例子,比如昨天,今天,前天,近七天,一周等等。這里整理了一個時間的完整類實例,直接實例化,有需要的可以看看
以下直接代碼
<?php
header("Content-type:text/html;Charset=utf-8");
class time{
private $year;//年
private $month;//月
private $day;//天
private $hour;//小時
private $minute;//分鐘
private $second;//秒
private $microtime;//毫秒
private $weekday;//星期
private $longDate;//完整的時間格式
private $diffTime;//兩個時間的差值
//返回年份 time:時間格式為時間 2018-8-21
function getyear($time="",$type=""){
if($time==""){
$time=time();
}
if($type==1){
return $this->year=date("y",$time); //返回兩位的年份 18
}else{
return $this->year=date("Y",$time); //返回四位的年份 2018
}
}
//返回當(dāng)前時間的月份 time:時間格式為時間 2018-8-21
function getmonth($time="",$type=""){
if($time==""){
$time=time();
}
switch($type){
case 1:$this->month=date("n",$time);//返回格式 8
break;
case 2:$this->month=date("m",$time);//返回格式 08
break;
case 3:$this->month=date("M",$time);//返回格式 Aug
break;
case 4:$this->month=date("F",$time);//返回格式 August
break;
default:$this->month=date("n",$time);
}
return $this->month;
}
//返回當(dāng)前時間的天數(shù) time:時間格式為時間 2018-8-21
function getday($time="",$type=""){
if($time==""){
$time=time();
}
if($type==1){
$this->day=date("d",$time);//返回格式 21
}else{
$this->day=date("j",$time);//返回格式 21
}
return $this->day;
}
//返回當(dāng)前時間的小時 2018-08-21 1:19:21 20:19:21
function gethour($time="",$type=""){
if($time==""){
$time=time();
}
switch($type){
case 1:$this->hour=date("H",$time);//格式: 1 20
break;
case 2:$this->hour=date("h",$time);//格式 01 08
break;
case 3:$this->hour=date("G",$time);//格式 1 20
break;
case 4:$this->hour=date("g",$time);//格式 1 8
break;
default :$this->hour=date("H",$time);
}
return $this->hour;
}
//返回當(dāng)前時間的分鐘數(shù) 1:9:18
function getminute($time="",$type=""){
if($time==""){
$time=time();
}
$this->minute=date("i",$time); //格式 09
return $this->minute;
}
//返回當(dāng)前時間的秒數(shù) 20:19:01
function getsecond($time="",$type=""){
if($time==""){
$time=time();
}
$this->second=date("s",$time); //格式 01
return $this->second;
}
//返回當(dāng)前時間的星期數(shù)
function getweekday($time="",$type=""){
if($time==""){
$time=time();
}
if($type==1){
$this->weekday=date("D",$time);//格式 Sun
}else if($type==2){
$this->weekday=date("l",$time); //格式 Sunday
}else{
$this->weekday=date("w",$time);//格式 數(shù)字表示 0--6
}
return $this->weekday;
}
//比較兩個時間的大小 格式 2018-8-21 8:4:3
function compare($time1,$time2){
$time1=strtotime($time1);
$time2=strtotime($time2);
if($time1>=$time2){ //第一個時間大于等于第二個時間 返回1 否則返回0
return 1;
}else{
return -1;
}
}
//比較兩個時間的差值
function diffdate($time1="",$time2=""){
//echo $time1.'------'.$time2.'<br>';
if($time1==""){
$time1=date("Y-m-d H:i:s");
}
if($time2==""){
$time2=date("Y-m-d H:i:s");
}
$date1=strtotime($time1);
$date2=strtotime($time2);
if($date1>$date2){
$diff=$date1-$date2;
}else{
$diff=$date2-$date1;
}
if($diff>=0){
$day=floor($diff/86400);
$hour=floor(($diff%86400)/3600);
$minute=floor(($diff%3600)/60);
$second=floor(($diff%60));
$this->diffTime='相差'.$day.'天'.$hour.'小時'.$minute.'分鐘'.$second.'秒';
}
return $this->diffTime;
}
//返回 X年X月X日
function buildDate($time="",$type=""){
if($type==1){
$this->longDate = $this->getyear($time) . '年' . $this->getmonth($time) . '月' . $this->getday($time) . '日';
}else{
$this->longDate = $this->getyear($time) . '年' . $this->getmonth($time) . '月' . $this->getday($time) . '日'.$this->gethour($time).':'.$this->getminute($time).':'.$this->getsecond($time);
}
return $this->longDate;
}
}
?>
實例化一個對象
<?php $time_var = "2018-08-21"; $obj = new time(); $year = $obj->getyear($time_var); echo($year); ?>
以上其他的方法也可以按照上面那個例子,輸出你想要得到的日期,在開發(fā)過程中,可以直接放入在擴(kuò)展庫里,直接引用!
到此這篇關(guān)于PHP時間類完整代碼實例的文章就介紹到這了,更多相關(guān)PHP時間類內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
laravel 關(guān)聯(lián)關(guān)系遍歷數(shù)組的例子
今天小編就為大家分享一篇laravel 關(guān)聯(lián)關(guān)系遍歷數(shù)組的例子,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-10-10
php使用正則驗證密碼字段的復(fù)雜強(qiáng)度原理詳細(xì)講解
密碼涉及到安全問題,所以密碼設(shè)計的復(fù)雜程序尤為重要。通常密碼由大小寫字母、數(shù)字、特殊符號組成。一般情況下前端可不做js判斷,使用ajax提交php后端程序接口,由后端判斷后返回json數(shù)據(jù),進(jìn)行用戶密碼復(fù)雜程序提示。2022-11-11
php實現(xiàn)當(dāng)前頁面點(diǎn)擊下載文件的實例代碼
下面小編就為大家?guī)硪黄猵hp實現(xiàn)當(dāng)前頁面點(diǎn)擊下載文件的實例代碼。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2016-11-11
Thinkphp5結(jié)合layer彈窗定制操作結(jié)果頁面
這篇文章主要介紹了Thinkphp5結(jié)合layer彈窗定制操作結(jié)果頁面,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-07-07

