PHP教程:time时间类实例代码

在我们开发过程中,常常用到时间的一些例子,比如昨天,今天,前天,近七天,一周等等。

在这里整理了一个时间的完整类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:时间格式为时间 2018-8-21
 function getyear($time="",$type=""){
 if($time==""){
 $time=time();
 }
 if($type==1){
 return $this->year=date("y",$time); //返回两位的年份 18
 }else{
 return $this->year=date("Y",$time); //返回四位的年份 2018
 }
 }
 //返回当前时间的月份 time:时间格式为时间 2018-8-21
 function getmonth($time="",$type=""){
 if($time==""){
 $time=time();
 }
 switch($type){
 case 1:$this->month=date("n",$time);//返回格式 8
  break;
 case 2:$this->month=date("m",$time);//返回格式 08
  break;
 case 3:$this->month=date("M",$time);//返回格式 Aug
  break;
 case 4:$this->month=date("F",$time);//返回格式 August
  break;
 default:$this->month=date("n",$time);
 }
 return $this->month; 
 }
 //返回当前时间的天数 time:时间格式为时间 2018-8-21 
 function getday($time="",$type=""){
 if($time==""){
 $time=time();
 }
 if($type==1){
 $this->day=date("d",$time);//返回格式 21
 }else{
 $this->day=date("j",$time);//返回格式 21
 }
 return $this->day;
 }
 //返回当前时间的小时 2018-08-21 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;
 }
 //比较两个时间的大小 格式 2018-8-21 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
  $time_var = "2021-03-10";
  $obj = new time();
  $year = $obj->getyear($time_var);

  echo($year);
?>


相关推荐

PHP教程:PHP 返回数组中第一个通过条件的元素
  • php教程
  • 2021-04-13

PHP教程:PHP 返回数组中第一个通过条件的元素

PHP  array_filter() 函数可以通过回调函数过滤数组的元素,返回的是过滤后的数组。但是很多时候,我们只是简单的要求返回第一个通过条件的元素,这个时候,我们就需要做一些处理,所以我把这个过程整理成一个函数 array_first。function array_first($array, ...

PHP读取CSV文件中指定的某几行数据
  • php教程
  • 2021-04-07

PHP读取CSV文件中指定的某几行数据

最近在玩CSV表格比较多,CSV是什么?相信很多人都知道EXCEL表格那么这两者有何区别呢?1.CSV是纯文本文件,excel不是纯文本,excel包含很多格式信息在里面。2.CSV文件的体积会更小,创建分发读取更加方便,适合存放结构化信息,比如记录的导出,流量统计等等。3.CSV文件在windows平台默认的打开方式是excel,但是它的本质是一个文本文件...

PHP教程:time时间类实例代码
  • php教程
  • 2021-03-10

PHP教程:time时间类实例代码

在我们开发过程中,常常用到时间的一些例子,比如昨天,今天,前天,近七天,一周等等。在这里整理了一个时间的完整类php实例,直接实例化,有需要的朋友可以看看大家可以按照下面那个例子,输出你想要得到的日期,在开发过程中,可以直接放入在扩展库里,直接引用即可!<?php header("Content-type:text/html;Charset...

自动推送脚本(适用于百度推送懒人版插件)
  • php教程
  • 2021-02-22

自动推送脚本(适用于百度推送懒人版插件)

有时候我们推送页面URL并不是zblog系统产生的页面甚至当你想要推送其他网站URL的时候可能就需要到另外写脚本或插件。那么在这里给大家送上一个简单的推送脚本,配合zblog百度推送懒人版适用于推送任何网站内容。首先我们在zblog网站根目录新建一个tuisong.php,<?php  require 'zb_system...

php基于curl实现必应Bing API推送方法实例
  • php教程
  • 2021-02-13

php基于curl实现必应Bing API推送方法实例

<?php $arr = array(     'https://www.newbii.cn/' => array(         'url'&nb...

PHP教程:php实现敏感词过滤 停止词实例(附敏感词库下载)
  • php教程
  • 2021-01-13

PHP教程:php实现敏感词过滤 停止词实例(附敏感词库下载)

敏感词、文字过滤是一个网站必不可少的功能,如何设计一个好的、高效的过滤算法是非常有必要的。在实现敏感词过滤的算法中,我们必须要减少运算,而 DFA 在 DFA 算法中几乎没有什么计算,有的只是状态的转换。所以想更高效的进行敏感词的过滤,需要使用 DFA 算法。/**  * Notes: [DoFilterWords ...

PHP教程:PHP判断远程文件是否存在
  • php教程
  • 2021-01-11

PHP教程:PHP判断远程文件是否存在

这个代码可以判断远程文件或者本地代码,但其实主要作用就是判断远程文件,判断本地文件建议直接是要file_exists函数。function my_file_exists($file) {     if(preg_match('/^http:\/\//',$file)){ ...

PHP教程:php实现生成微博短网址实例
  • php教程
  • 2021-01-09

PHP教程:php实现生成微博短网址实例

下面分享一下通过php生成短网址的那个过程(这里将长网址生成短至5-6位字符长度并且还需要是唯一的):<?php function code62($x) {     $show = '';     while($...

PHP教程:通用PHP分页类、分页显示实例方法
  • php教程
  • 2020-12-09

PHP教程:通用PHP分页类、分页显示实例方法

本文通过PHP分页显示实例方法,结合实例形式分析了php数据库查询及内容结合HTML分页显示的简单操作技巧,希望对大家学习PHP程序设计有所帮助。先来看个实例<?php header("content-type:text/html;charset=utf-8"); $currentpage = 1; if(...

iconv('GBK','UTF-8',$str) 如果$str本来就是utf-8 是不是会乱码?
  • php教程
  • 2020-12-07

iconv('GBK','UTF-8',$str) 如果$str本来就是utf-8 是不是会乱码?

尝试了一下,是直接报错吧,iconv(): Detected an illegal character in input string所以我们先判断是不是utf8,再转码吧,这样保险点mb_detect_encoding — 检测字符的编码echo mb_detect_encoding($str,'UTF-8,GBK')!...