我有自定义新闻模块,我的发布日期。我想根据发布日期显示发布的小时数。假设发布时间是08.00 PM,现在是09.00 PM,那么我想在1小时前发布。但是在同一天下午11点59分之后,我需要显示发布日期。直到晚上11.59,它应该在11.59 PM之后显示“发布4小时前”,我需要显示发布日期。
如何根据午夜12点的时间计算前一段时间的功能?我使用了以下代码,但它总是从发布的日期和时间计算24小时。
$time = time() - $postedTime;
$time = ($time<1)? 1 : $time;
$tokens = array (
31536000 => 'Year',
2592000 => 'Month',
604800 => 'Week',
86400 => 'Day',
3600 => 'Hour',
60 => 'Minute',
1 => 'Second'
);
foreach ($tokens as $unit => $text) {
if ($time < $unit) continue;
$numberOfUnits = floor($time / $unit);
if($time>86400) {
return date('d.m.Y', $timestamp);
} else{
return $numberOfUnits.' '.$text.(($numberOfUnits>1)?'s':'');
}
}
答案 0 :(得分:1)
我稍微编辑了你的代码。
package main
import (
"fmt"
"time"
)
func main() {
count := 10
c := make(chan int)
for i := 0; i < count; i++ {
go func(i int) {
c <- i + 1
}(i)
}
for i := 0; i < count; i++ {
fmt.Println("c", <-c)
}
fmt.Println()
d := make(chan int)
for i := 0; i < count; i++ {
go func(i int) {
d <- i + 1
}(i)
time.Sleep(time.Millisecond * 5)
}
for i := 0; i < count; i++ {
fmt.Println("d", <-d)
}
var input string
fmt.Scanln(&input)
}