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 相关文章推荐
用文本文件制作留言板提示(下)
Oct 09 PHP
elgg 获取文件图标地址的方法
Mar 20 PHP
php删除页面记录 同时刷新页面 删除条件用GET方式获得
Jan 10 PHP
Php图像处理类代码分享
Jan 19 PHP
PHP间隔一段时间执行代码的方法
Dec 02 PHP
php使用pdo连接报错Connection failed SQLSTATE的解决方法
Dec 15 PHP
变量在 PHP7 内部的实现(一)
Dec 21 PHP
php5.4传引用时报错问题分析
Jan 22 PHP
php简单实现批量上传图片的方法
May 09 PHP
highchart数据源纵轴json内的值必须是int(详解)
Feb 20 PHP
PHP+mysql实现的三级联动菜单功能示例
Feb 15 PHP
laravel框架中路由设置,路由参数和路由命名实例分析
Nov 23 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
什么是短波收听SWL
2021/03/01 无线电
PHP三层结构(上) 简单三层结构
2010/07/04 PHP
有关phpmailer的详细介绍及使用方法
2013/01/28 PHP
新浪SAE搭建PHP项目教程
2015/01/28 PHP
php基于Fleaphp框架实现cvs数据导入MySQL的方法
2016/02/23 PHP
Laravel框架基于ajax实现二级联动功能示例
2019/01/17 PHP
javascript取消文本选定的实现代码
2010/11/14 Javascript
jquery win 7透明弹出层效果的简单代码
2013/08/06 Javascript
iframe里面的元素触发父窗口元素事件的jquery代码
2014/10/19 Javascript
jquery表单对象属性过滤选择器实例分析
2015/05/18 Javascript
JavaScript获取当前运行脚本文件所在目录的方法
2016/02/03 Javascript
修复jQuery tablesorter无法正确排序的bug(加千分位数字后)
2016/03/30 Javascript
fullpage.js全屏滚动插件使用实例
2016/09/06 Javascript
Node.js利用Net模块实现多人命令行聊天室的方法
2016/12/23 Javascript
js实现图片左右滚动效果
2017/02/27 Javascript
nodejs Assert中equal(),strictEqual(),deepEqual(),strictDeepEqual()比较
2017/09/18 NodeJs
jQuery扩展方法实现Form表单与Json互相转换的实例代码
2018/09/05 jQuery
微信域名检测接口调用演示步骤(含PHP、Python)
2019/12/08 Javascript
js实现简单的随机点名器
2020/09/17 Javascript
Python tkinter模块中类继承的三种方式分析
2017/08/08 Python
8段用于数据清洗Python代码(小结)
2019/10/31 Python
Python解压 rar、zip、tar文件的方法
2019/11/19 Python
Python基本类型的连接组合和互相转换方式(13种)
2019/12/16 Python
浅谈keras中的目标函数和优化函数MSE用法
2020/06/10 Python
Keras自动下载的数据集/模型存放位置介绍
2020/06/19 Python
CSS3教程(3):border-color网页边框色彩
2009/04/02 HTML / CSS
无需JS和jQuery代码实现CSS3鼠标浮动放大图片
2016/11/21 HTML / CSS
Dune London官网:英国著名奢华鞋履品牌
2017/11/30 全球购物
党的群众路线教育实践活动总结报告
2014/07/03 职场文书
2014最新开业庆典策划方案(5篇)
2014/09/15 职场文书
酒店采购员岗位职责
2015/04/03 职场文书
2015民办小学年度工作总结
2015/05/26 职场文书
阿凡达观后感
2015/06/10 职场文书
人间正道是沧桑观后感
2015/06/15 职场文书
2015年小学财务工作总结
2015/07/20 职场文书
护士旷工检讨书
2015/08/15 职场文书