经常用到的PHP时间类完整实例,可直接用

网友投稿 261 2022-06-17


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

以下直接代码

 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  }

 }

 //返回当前时间的月份 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; 

 }

 //返回当前时间的天数 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;

 }

 //返回当前时间的小时  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;

 }

 //返回当前时间的分钟数 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;

 }

 //比较两个时间的大小 格式 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.'
';  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;  

 }

} ?>

实例化一个对象,

   $obj = new time();

   $year = $obj->getyear($time_var);

   echo($year); ?>

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


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:php队列的实现思路和详细过程,可参考学习下!(php消息队列使用场景)
下一篇:PHP非递归遍历目录下所有文件,可以试一下!(php递归创建目录)
相关文章

 发表评论

暂时没有评论,来抢沙发吧~