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 相关文章推荐
phpmyadmin 访问被拒绝的真实原因
Jun 15 PHP
Windows下安装Memcached的步骤说明
Apr 25 PHP
请离开include_once和require_once
Jul 18 PHP
PHP中fwrite与file_put_contents性能测试代码
Aug 02 PHP
PHP远程采集图片详细教程
Jul 01 PHP
分享一段PHP制作的中文拼音首字母工具类
Dec 11 PHP
php实现window平台的checkdnsrr函数
May 27 PHP
php通过获取头信息判断图片类型的方法
Jun 26 PHP
laravel实现分页样式替换示例代码(增加首、尾页)
Sep 22 PHP
PHP根据树的前序遍历和中序遍历构造树并输出后序遍历的方法
Nov 10 PHP
详解使用php-cs-fixer格式化代码
Sep 16 PHP
如何利用PHP实现上传图片功能详解
Sep 24 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
Session的工作方式
2006/10/09 PHP
php+javascript的日历控件
2009/11/19 PHP
浅谈web上存漏洞及原理分析、防范方法(安全文件上存方法)
2013/06/29 PHP
PHP集成百度Ueditor 1.4.3
2014/11/23 PHP
apache中为php 设置虚拟目录
2014/12/17 PHP
Laravel接收前端ajax传来的数据的实例代码
2017/07/20 PHP
javascript 常用代码技巧大收集
2009/02/25 Javascript
细说浏览器特性检测(2)-通用事件检测
2010/11/05 Javascript
JavaScript 模式之工厂模式(Factory)应用介绍
2012/11/15 Javascript
js 控制下拉菜单刷新的方法
2013/03/03 Javascript
Vue.use源码分析
2017/04/22 Javascript
通过构造函数实例化对象的方法
2017/06/28 Javascript
js实现把时间戳转换为yyyy-MM-dd hh:mm 格式(es6语法)
2017/12/28 Javascript
基于Vue的SPA动态修改页面title的方法(推荐)
2018/01/02 Javascript
JS获取input[file]的值并显示在页面的实现方法
2018/03/09 Javascript
JS实现前端页面的搜索功能
2018/06/12 Javascript
新手快速上手webpack4打包工具的使用详解
2019/01/28 Javascript
原理深度解析Vue的响应式更新比React快
2020/04/04 Javascript
JS异步宏队列微队列原理详解
2020/09/09 Javascript
python开发之函数定义实例分析
2015/11/12 Python
Python实现将SQLite中的数据直接输出为CVS的方法示例
2017/07/13 Python
解决Scrapy安装错误:Microsoft Visual C++ 14.0 is required...
2017/10/01 Python
利用Python半自动化生成Nessus报告的方法
2019/03/19 Python
树莓派采用socket方式文件传输(python)
2019/06/22 Python
泰海淘:泰国king Power王权免税集团旗下跨境海淘综合型电商
2020/07/26 全球购物
波兰多品牌运动商店:StreetStyle24.pl
2020/09/22 全球购物
用C或者C++语言实现SOCKET通信
2015/02/24 面试题
new修饰符是起什么作用
2015/06/28 面试题
出口公司经理求职简历中的自我评价
2013/10/13 职场文书
北体毕业生求职信
2014/02/28 职场文书
售后客服个人自我评价
2014/09/14 职场文书
英文慰问信范文
2015/03/24 职场文书
雨雪天气温馨提示
2015/07/15 职场文书
2015年统计员个人工作总结
2015/07/23 职场文书
Django使用echarts进行可视化展示的实践
2021/06/10 Python
Win11安装受阻怎么办? Windows11安装问题与解决方案汇总
2021/11/21 数码科技