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 相关文章推荐
JAVA/JSP学习系列之二
Oct 09 PHP
PHP图片上传类带图片显示
Nov 25 PHP
php 高效率写法 推荐
Feb 21 PHP
实战mysql导出中文乱码及phpmyadmin导入中文乱码的解决方法
Jun 11 PHP
PHP中数组的三种排序方法分享
May 07 PHP
PHP zip扩展Linux下安装过程分享
May 05 PHP
CI框架自动加载session出现报错的解决办法
Jun 17 PHP
smarty中英文多编码字符截取乱码问题解决方法
Oct 28 PHP
PHP Cookei记录用户历史浏览信息的代码
Feb 03 PHP
MAC下通过改apache配置文件切换php多版本的方法
Apr 26 PHP
Thinkphp开发--集成极光推送
Sep 15 PHP
PHP实现对图片的反色处理功能【测试可用】
Feb 01 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 class中self,parent,this的区别以及实例介绍
2013/04/24 PHP
PHP解析目录路径的3个函数总结
2014/11/18 PHP
php使用socket post数据到其它web服务器的方法
2015/06/02 PHP
利用PHP fsockopen 模拟POST/GET传送数据的方法
2015/09/22 PHP
Joomla使用Apache重写模式的方法
2016/05/04 PHP
详解PHP变量传值赋值和引用赋值变量销毁
2019/03/23 PHP
可以显示单图片,多图片ajax请求的ThickBox3.1类下载
2007/12/23 Javascript
解析John Resig Simple JavaScript Inheritance代码
2012/12/03 Javascript
JS图像无缝滚动脚本非常好用
2014/02/10 Javascript
鼠标滑过出现预览的大图提示效果
2014/02/26 Javascript
7个去伪存真的JavaScript面试题
2016/01/07 Javascript
AngularJS中如何使用$parse或$eval在运行时对Scope变量赋值
2016/01/25 Javascript
AngularJS 表达式详解及实例代码
2016/09/14 Javascript
Bootstrap幻灯片轮播图支持触屏左右手势滑动的实现方法
2016/10/13 Javascript
搭建简单的nodejs http服务器详解
2017/03/09 NodeJs
Bootstrap常用组件学习(整理)
2017/03/24 Javascript
详解vue-router2.0动态路由获取参数
2017/06/14 Javascript
谈谈我在vue-cli3中用预渲染遇到的坑
2020/04/22 Javascript
微信公众号网页分享功能开发的示例代码
2020/05/27 Javascript
vue 解决provide和inject响应的问题
2020/11/12 Javascript
[35:55]完美世界DOTA2联赛PWL S3 Rebirth vs CPG 第一场 12.11
2020/12/13 DOTA
用Python的pandas框架操作Excel文件中的数据教程
2015/03/31 Python
python集合用法实例分析
2015/05/30 Python
简单上手Python中装饰器的使用
2015/07/12 Python
Python中多线程的创建及基本调用方法
2016/07/08 Python
使用pandas read_table读取csv文件的方法
2018/07/04 Python
基于pandas将类别属性转化为数值属性的方法
2018/07/25 Python
python 随机打乱 图片和对应的标签方法
2018/12/14 Python
在pycharm中使用git版本管理以及同步github的方法
2019/01/16 Python
python制作朋友圈九宫格图片
2019/11/03 Python
用 Python 制作地球仪的方法
2020/04/24 Python
Python如何把字典写入到CSV文件的方法示例
2020/08/23 Python
PyCharm 2020.2下配置Anaconda环境的方法步骤
2020/09/23 Python
Silk’n激光脱毛器官网:silkn.com
2016/10/06 全球购物
求高于平均分的学生学号及成绩
2016/09/01 面试题
安全第一课观后感
2015/06/18 职场文书