PHP时间类完整实例(非常实用)


Posted in PHP onDecember 25, 2015

本文实例讲述了PHP时间类。分享给大家供大家参考,具体如下:

<?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:时间格式为时间戳  2013-3-27
 function getyear($time="",$type=""){
 if($time==""){
  $time=time();
 }
 if($type==1){
  return $this->year=date("y",$time); //返回两位的年份 13
 }else{
  return $this->year=date("Y",$time); //返回四位的年份 2013
 }
 }
 //返回当前时间的月份 time:时间格式为时间戳 2013-3-27
 function getmonth($time="",$type=""){
 if($time==""){
  $time=time();
 }
 switch($type){
  case 1:$this->month=date("n",$time);//返回格式 3
   break;
  case 2:$this->month=date("m",$time);//返回格式 03
   break;
  case 3:$this->month=date("M",$time);//返回格式 Mar
   break;
  case 4:$this->month=date("F",$time);//返回格式 March
   break;
  default:$this->month=date("n",$time);
 }
 return $this->month; 
 }
 //返回当前时间的天数 time:时间格式为时间戳 2013-3-4 
 function getday($time="",$type=""){
 if($time==""){
  $time=time();
 }
 if($type==1){
  $this->day=date("d",$time);//返回格式 04
 }else{
  $this->day=date("j",$time);//返回格式 4
 }
 return $this->day;
 }
 //返回当前时间的小时  2010-11-10 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;
 }
 //比较两个时间的大小 格式 2013-3-4 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程序设计有所帮助。

PHP 相关文章推荐
php5.2时间相差8小时
Jan 15 PHP
PHP高级对象构建 多个构造函数的使用
Feb 05 PHP
thinkphp模板赋值与替换实例简述
Nov 24 PHP
php字符串分割函数用法实例
Mar 17 PHP
php header函数的常用http头设置
Jun 25 PHP
PHP的Socket通信之UDP通信实例
Jul 02 PHP
CodeIgniter多语言实现方法详解
Jan 20 PHP
php基于jquery的ajax技术传递json数据简单实例
Apr 15 PHP
使用Yii2实现主从数据库设置
Nov 20 PHP
PHP递归实现汉诺塔问题的方法示例
Nov 25 PHP
PHP常见数组排序方法小结
Aug 20 PHP
php面试中关于面向对象的相关问题
Feb 13 PHP
PHP图形操作之Jpgraph学习笔记
Dec 25 #PHP
php实现scws中文分词搜索的方法
Dec 25 #PHP
php自定义分页类完整实例
Dec 25 #PHP
php导出生成word的方法
Dec 25 #PHP
大家都应该掌握的PHP关联数组使用技巧
Dec 25 #PHP
[原创]PHP实现逐行删除文件右侧空格的方法
Dec 25 #PHP
PHP操作MySQL的mysql_fetch_* 函数的常见用法教程
Dec 25 #PHP
You might like
PHP strip_tags()去除HTML、XML以及PHP的标签介绍
2014/02/18 PHP
非常好用的Zend Framework分页类
2014/06/25 PHP
php和vue配合使用技巧和方法
2019/05/09 PHP
php使用curl模拟多线程实现批处理功能示例
2019/07/25 PHP
PHP中通过getopt解析GNU C风格命令行选项
2019/11/18 PHP
JQuery实现自定义对话框的代码
2008/06/15 Javascript
javascript实现tabs选项卡切换效果(自写原生js)
2013/03/19 Javascript
定时器(setTimeout/setInterval)调用带参函数失效解决方法
2013/03/26 Javascript
用javascript添加控件自定义属性解析
2013/11/25 Javascript
javascript中indexOf技术详解
2015/05/07 Javascript
JavaScript实现打开链接页面的方式汇总
2016/06/02 Javascript
ES6新特征数字、数组、字符串
2016/10/01 Javascript
详解jQuery的表单验证插件--Validation
2016/12/21 Javascript
微信小程序 数据交互与渲染实例详解
2017/01/21 Javascript
vue.js的手脚架vue-cli项目搭建的步骤
2017/08/30 Javascript
vue.extend与vue.component的区别和联系
2018/09/19 Javascript
详解微信小程序胶囊按钮返回|首页自定义导航栏功能
2019/06/14 Javascript
js prototype和__proto__的关系是什么
2019/08/23 Javascript
vue 实现v-for循环回来的数据动态绑定id
2019/11/07 Javascript
[55:47]DOTA2上海特级锦标赛C组小组赛#2 LGD VS Newbee第三局
2016/02/27 DOTA
Python实现快速多线程ping的方法
2015/07/15 Python
python 删除大文件中的某一行(最有效率的方法)
2017/08/19 Python
代码讲解Python对Windows服务进行监控
2018/02/11 Python
python实现两个文件合并功能
2018/04/01 Python
python自制包并用pip免提交到pypi仅安装到本机【推荐】
2019/06/03 Python
浅析Python 引号、注释、字符串
2019/07/25 Python
python GUI库图形界面开发之PyQt5浏览器控件QWebEngineView详细使用方法
2020/02/26 Python
Python实现Canny及Hough算法代码实例解析
2020/08/06 Python
快速解决pymongo操作mongodb的时区问题
2020/12/05 Python
Stella McCartney官网:成衣、包袋、香水、内衣、童装及Adidas系列
2018/12/20 全球购物
信息系统专业个人求职信范文
2013/12/07 职场文书
年度优秀员工获奖感言
2014/08/15 职场文书
圆明园纪录片观后感
2015/06/03 职场文书
2016计算机专业毕业生自荐信
2016/01/28 职场文书
pytest配置文件pytest.ini的详细使用
2021/04/17 Python
JavaScript流程控制(循环)
2021/12/06 Javascript