开发中,经常用到时间的一些例子,比如昨天,今天,前天,近七天,一周等等。这里整理了一个时间的完整类实例,直接实例化,有需要的可以看看
以下直接代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
|
<?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;
}
}
?>
|
实例化一个对象
1
2
3
4
5
6
7
|
<?php
$time_var = "2018-08-21" ;
$obj = new time();
$year = $obj ->getyear( $time_var );
echo ( $year );
?>
|
以上其他的方法也可以按照上面那个例子,输出你想要得到的日期,在开发过程中,可以直接放入在扩展库里,直接引用!
原文链接:https://blog.csdn.net/liuxingjiaoyuC/article/details/112692677
到此这篇关于PHP时间类完整代码实例的文章就介绍到这了,更多相关PHP时间类内容请搜索服务器之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持服务器之家!