PHP时间类完整代码实例

admin3年前PHP教程90

开发中,经常用到时间的一些例子,比如昨天,今天,前天,近七天,一周等等。这里整理了一个时间的完整类实例,直接实例化,有需要的可以看看

以下直接代码


<?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:时间格式为时间 2019-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); //返回四位的年份 2019
 }
 }
 //返回当前时间的月份 time:时间格式为时间 2019-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;
 }
 //返回当前时间的天数 time:时间格式为时间 2019-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;
 }
 //返回当前时间的小时 2019-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;
 }
 //返回当前时间的分钟数 1:9:18
 function getminute($time="",$type=""){
 if($time==""){
 $time=time();
 }
 $this->minute=date("i",$time); //格式 09
 return $this->minute;
 }
 //返回当前时间的秒数 20:19:01
 function getsecond($time="",$type=""){
 if($time==""){
 $time=time();
 }
 $this->second=date("s",$time); //格式 01
 return $this->second;
 }
 //返回当前时间的星期数
 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);//格式 数字表示 0--6
 }
 return $this->weekday;
 }
 //比较两个时间的大小 格式 2019-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 = "2019-08-21";
  $obj = new time();
  $year = $obj->getyear($time_var);
 
  echo($year);
?>

以上其他的方法也可以按照上面那个例子,输出你想要得到的日期,在开发过程中,可以直接放入在扩展库里,直接引用!

到此这篇关于PHP时间类完整代码实例的文章就介绍到这了,更多相关PHP时间类内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!

免责声明:本文内容来自用户上传并发布,站点仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。请核实广告和内容真实性,谨慎使用。

相关文章

详解PHP Swoole长连接常见问题

目录连接失效问题如何解决如何维持长连接结论连接失效问题例子其中,Redis常见的报错就是:配置项:timeout报错信息:Error while reading line from the serve...

显卡服务器适用场合美国显卡服务器适合哪些行业

显卡服务器又被称之为GPU服务器,简单来说显卡服务器是基于GPU,应用于视频编解码、深度学习、科学计算等多种场景的快速、稳定、弹性的计算服务;显卡服务器有着非常出色的图形处理能力,并且也具有高性能计算...

laravel 表单验证实现多个字段组合后唯一

Laravel 表单验证器的几种使用方法1、使用控制器的 validate 方法进行参数验证/** * 保存一篇新的博客文章。 * * @param Request $r...

GPU服务器的主要应用领域租用美国gpu服务器哪个好

GPU服务器又称显卡服务器,是基于GPU的应用于视频编解码、AI深度学习、科学计算等多种场景的快速、稳定、弹性的计算服务。GPU加速计算可以提供非凡的应用程序性能,能将应用程序计算密集部分的工作负载转...

宁波高防服务器租赁价格多少比较合理

宁波高防服务器租赁价格多少比较合理?宁波高防服务器租赁价格的合理性取决于多个因素,例如服务器配置、带宽、防护能力、数据中心位置等。因此,价格会因供应商和服务器方案而异。一般来说,相同配置和服务质量的服...

海外站群服务器不同在哪租用美国站群服务器选择什么配置好

海外站群服务器不同在哪?一些朋友可能都不清楚站群服务器是什么,对此这篇就给大家来详细的介绍一下。另外选择什么站群服务器好,也是大家比较关心的问题,下文给大家对比了热门的站群服务器,相信对大家选择合适的...