11
08月
2015
46. Facebook 样式的时间戳
Facebook (x mins age, y hours ago etc)
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
|
function nicetime( $date )
{
if ( empty ( $date )) {
return "No date provided" ;
}
$periods = array ( "second" , "minute" , "hour" , "day" , "week" , "month" , "year" , "decade" );
$lengths = array ( "60" , "60" , "24" , "7" , "4.35" , "12" , "10" );
$now = time();
$unix_date = strtotime ( $date );
// check validity of date
if ( empty ( $unix_date )) {
return "Bad date" ;
}
// is it future date or past date
if ( $now > $unix_date ) {
$difference = $now - $unix_date ;
$tense = "ago" ;
} else {
$difference = $unix_date - $now ;
$tense = "from now" ;
}
for ( $j = 0; $difference >= $lengths [ $j ] && $j < count ( $lengths )-1; $j ++) {
$difference /= $lengths [ $j ];
}
$difference = round ( $difference );
if ( $difference != 1) {
$periods [ $j ].= "s" ;
}
return "$difference $periods[$j] {$tense}" ;
}
|
语法:
1
2
3
4
|
<?php
$date = "2015-07-05 03:45" ;
$result = nicetime( $date ); // 2 days ago
?>
|
特殊说明,本文版权归 ning个人博客 所有带原创标签请勿转载,转载请注明出处.