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重新实现PHP脚本引擎内置函数
Mar 06 PHP
PHP获取搜索引擎关键字来源的函数(支持百度和谷歌等搜索引擎)
Oct 03 PHP
PHP数组循环操作详细介绍 附实例代码
Feb 03 PHP
基于AppServ,XAMPP,WAMP配置php.ini去掉警告信息(NOTICE)的方法详解
May 07 PHP
PHP原生函数一定好吗?
Dec 08 PHP
ThinkPHP安装和设置
Jul 27 PHP
php的api数据接口书写实例(推荐)
Sep 22 PHP
PHP实现的折半查找算法示例
Dec 19 PHP
PHP设计模式之建造者模式定义与用法简单示例
Aug 13 PHP
php获取用户真实IP和防刷机制的实例代码
Nov 28 PHP
Laravel框架学习笔记之批量更新数据功能
May 30 PHP
聊聊 PHP 8 新特性 Attributes
Aug 19 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
Terran剧情介绍
2020/03/14 星际争霸
php set_magic_quotes_runtime() 函数过时解决方法
2010/07/08 PHP
PHP调用Linux的命令行执行文件压缩命令
2013/01/27 PHP
微信开发之网页授权获取用户信息(二)
2016/01/08 PHP
PHP设计模式之工厂模式与单例模式
2016/09/28 PHP
php中str_pad()函数用法分析
2017/03/28 PHP
Laravel多用户认证系统示例详解
2018/03/13 PHP
Jquery中给animation加更多的运作效果实例
2013/09/05 Javascript
javascript实现的登陆遮罩效果汇总
2015/11/09 Javascript
一波JavaScript日期判断脚本分享
2016/03/06 Javascript
浅谈jquery上下滑动的注意事项
2016/10/13 Javascript
Bootstrap导航简单实现代码
2017/03/06 Javascript
jQuery模拟下拉框选择对应菜单的内容
2017/03/07 Javascript
使用AngularJS2中的指令实现按钮的切换效果
2017/03/27 Javascript
微信小程序模板和模块化用法实例分析
2017/11/28 Javascript
JavaScript原生实现观察者模式的示例
2017/12/15 Javascript
快速解决vue在ios端下点击响应延时的问题
2018/08/27 Javascript
js 解析 JSON 数据简单示例
2020/04/21 Javascript
vuex实现购物车的增加减少移除
2020/06/28 Javascript
js实现无缝轮播图插件封装
2020/07/31 Javascript
[01:00:25]2018DOTA2亚洲邀请赛3月30日 小组赛A组 VG VS Liquid
2018/03/31 DOTA
python处理文本文件并生成指定格式的文件
2014/07/31 Python
给Python IDLE加上自动补全和历史功能
2014/11/30 Python
用Python代码来绘制彭罗斯点阵的教程
2015/04/03 Python
在Django中限制已登录用户的访问的方法
2015/07/23 Python
python和ruby,我选谁?
2017/09/13 Python
浅谈django三种缓存模式的使用及注意点
2018/09/30 Python
Django 静态文件配置过程详解
2019/07/23 Python
Python图像处理库PIL的ImageFilter模块使用介绍
2020/02/26 Python
python regex库实例用法总结
2021/01/03 Python
如何写出高质量、高性能的MySQL查询
2014/11/17 面试题
经典的毕业生自荐信范文
2014/04/14 职场文书
化妆品活动策划方案
2014/05/23 职场文书
Python文件的操作示例的详细讲解
2021/04/08 Python
GPU服务器的多用户配置方法
2022/07/07 Servers
JavaScript实现音乐播放器
2022/08/14 Javascript