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 相关文章推荐
网站加速 PHP 缓冲的免费实现方法
Oct 09 PHP
基于asp+ajax和数据库驱动的二级联动菜单
May 06 PHP
PHP中for与foreach的区别分析
Mar 09 PHP
php开启安全模式后禁用的函数集合
Jun 26 PHP
鸡肋的PHP单例模式应用详解
Jun 03 PHP
解析在PHP中使用全局变量的几种方法
Jun 24 PHP
php获取域名的google收录示例
Mar 24 PHP
搭建Vim为自定义的PHP开发工具的一些技巧
Dec 11 PHP
php类中的$this,static,final,const,self这几个关键字使用方法
Dec 14 PHP
php生成0~1随机小数的方法(必看)
Apr 05 PHP
PHP中的函数声明与使用详解
May 27 PHP
php中yar框架实例用法讲解
Dec 27 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
mysql5写入和读出乱码解决
2006/11/25 PHP
PHP魔术方法__GET、__SET使用实例
2014/11/25 PHP
Windows下编译PHP5.4和xdebug全记录
2015/04/03 PHP
yii分页组件用法实例分析
2015/12/28 PHP
PHP Static延迟静态绑定用法分析
2016/03/16 PHP
php模式设计之观察者模式应用实例分析
2019/09/25 PHP
基于jquery的气泡提示效果
2010/05/31 Javascript
在JavaScript中实现类的方式探讨
2013/08/28 Javascript
jQuery队列操作方法实例
2014/06/11 Javascript
js跨域请求的5中解决方式
2015/07/02 Javascript
jQuery弹出div层过2秒自动消失
2016/11/29 Javascript
通过button将form表单的数据提交到action层的实例
2017/09/08 Javascript
vue-cli 构建骨架屏的方法示例
2018/11/08 Javascript
解决Layui数据表格的宽高问题
2019/09/28 Javascript
JavaScript写个贪吃蛇小游戏(超详细)
2020/03/17 Javascript
JS异步宏队列与微队列原理区别详解
2020/07/02 Javascript
vue3 watch和watchEffect的使用以及有哪些区别
2021/01/26 Vue.js
python抓取京东价格分析京东商品价格走势
2014/01/09 Python
python中文分词,使用结巴分词对python进行分词(实例讲解)
2017/11/14 Python
python MySQLdb使用教程详解
2018/03/20 Python
一看就懂得Python的math模块
2018/10/21 Python
python3实现zabbix告警推送钉钉的示例
2019/02/20 Python
Django 多环境配置详解
2019/05/14 Python
比利时香水网上商店:NOTINO
2018/03/28 全球购物
葡萄牙航空官方网站:TAP Air Portugal
2019/10/31 全球购物
英国哈罗德园艺:Harrod Horticultural
2020/03/31 全球购物
出纳员岗位职责
2014/03/13 职场文书
大学生励志演讲稿
2014/04/25 职场文书
公司股东出资证明书
2014/11/01 职场文书
2014三年级班主任工作总结
2014/12/05 职场文书
2014年财务经理工作总结
2014/12/08 职场文书
酒店优秀员工推荐信
2015/03/24 职场文书
中学语文教学反思
2016/02/16 职场文书
MySQL子查询中order by不生效问题的解决方法
2021/08/02 MySQL
浅谈Java父子类加载顺序
2021/08/04 Java/Android
【海涛教你打DOTA】虚空假面第一视角骨弓3房29杀
2022/04/01 DOTA