PHP时间类完整代码实例


Posted in PHP onFebruary 26, 2021

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

以下直接代码

<?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
 }
 }
 //返回当前时间的月份 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.'<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);
?>

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

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

PHP 相关文章推荐
新浪新闻小偷
Oct 09 PHP
PHP 日期加减的类,很不错
Oct 10 PHP
php生成EAN_13标准条形码实例
Nov 13 PHP
PHP中的插件机制原理和实例
Jul 08 PHP
PHP GD库生成图像的几个函数总结
Nov 19 PHP
PHP中开启gzip压缩的2种方法
Jan 31 PHP
php post大量数据时发现数据丢失问题解决方法
Jun 20 PHP
实现PHP框架系列文章(6)mysql数据库方法
Mar 04 PHP
thinkphp3.x中变量的获取和过滤方法详解
May 20 PHP
PHP filesize函数用法浅析
Feb 15 PHP
PHP递归算法的简单实例
Feb 28 PHP
php7 错误处理机制修改实例分析
May 25 PHP
PHP队列场景以及实现代码实例详解
Feb 26 #PHP
PHP实现长轮询消息实时推送功能代码实例讲解
Feb 26 #PHP
php的对象传值与引用传值代码实例讲解
Feb 26 #PHP
php并发加锁问题分析与设计代码实例讲解
Feb 26 #PHP
PHP内存溢出优化代码详解
Feb 26 #PHP
php自动加载代码实例详解
Feb 26 #PHP
PHP的重载使用魔术方法代码实例详解
Feb 26 #PHP
You might like
PHP截取中文字符串的问题
2006/07/12 PHP
PHP中把stdClass Object转array的几个方法
2014/05/08 PHP
php获取百度收录、百度热词及百度快照的方法
2015/04/02 PHP
PHP异常处理浅析
2015/05/12 PHP
php实现curl模拟ftp上传的方法
2015/07/29 PHP
php插入含有特殊符号数据的处理方法
2016/11/24 PHP
extjs fckeditor集成代码
2009/05/10 Javascript
JavaScript中String和StringBuffer的速度之争
2010/04/01 Javascript
JavaScript游戏之优化篇
2010/11/08 Javascript
JavaScript实现iframe自动高度调整和不同主域名跨域
2016/02/27 Javascript
JavaScript常用函数工具集:lao-utils
2016/03/01 Javascript
JS动态增删表格行的方法
2016/03/03 Javascript
微信小程序 教程之wxapp视图容器 scroll-view
2016/10/19 Javascript
微信小程序之小豆瓣图书实例
2016/11/30 Javascript
原生JavaScript实现精美的淘宝轮播图效果示例【附demo源码下载】
2017/05/27 Javascript
jQuery+HTML5实现WebGL高性能烟花绽放动画效果【附demo源码下载】
2017/08/18 jQuery
VueJs监听window.resize方法示例
2018/01/17 Javascript
Vue-Router2.X多种路由实现方式总结
2018/02/09 Javascript
vuex中的 mapState,mapGetters,mapActions,mapMutations 的使用
2018/04/13 Javascript
bootstrap tooltips在 angularJS中的使用方法
2019/04/10 Javascript
Vue项目利用axios请求接口下载excel
2020/11/17 Vue.js
[02:09]抵达西雅图!中国军团加油!
2014/07/07 DOTA
python放大图片和画方格实现算法
2018/03/30 Python
Python定义二叉树及4种遍历方法实例详解
2018/07/05 Python
Flask框架信号用法实例分析
2018/07/24 Python
Python+kivy BoxLayout布局示例代码详解
2020/12/28 Python
纯净、自信、100%的羊绒服装:360Cashmere
2021/02/20 全球购物
给客户的道歉信
2014/01/13 职场文书
税务干部鉴定材料
2014/02/11 职场文书
党员承诺书范文
2014/05/19 职场文书
纪念九一八事变演讲稿1000字
2014/09/14 职场文书
2014年六五普法工作总结
2014/11/25 职场文书
民事二审代理词
2015/05/25 职场文书
厉行节约工作总结
2015/08/12 职场文书
《世界多美呀》教学反思
2016/02/22 职场文书
vue cli4中mockjs在dev环境和build环境的配置详情
2022/04/06 Vue.js