[software]
[公開:any]
2004年10月26日3時45分と書かれても、それが今からどれぐらい過去なのかをさっとイメージするのは難しい。そこで、現在を基準とした、より体感的な時刻表現を試みる。
#!/usr/bin/env perl sub deltatime{ my ( $time ) = @_; my $now = time; my ($sec, $min, $hour, $mday, $mon, $year) = localtime($time); my ($secnow, $minnow, $hournow, $mdaynow, $monnow, $yearnow) = localtime($now); $mon++; $monnow++; $year += 1900; $yearnow += 1900; my $deltatime = $now - $time; my $timestring; if ( $deltatime < 60 ){ $deltatime = int( $deltatime ); $timestring = "$deltatime秒前"; } elsif ( $deltatime < 3600 ){ $deltatime = int( $deltatime / 60 ); $timestring = "$deltatime分前"; } elsif ( $deltatime < 86400 ){ $deltatime = int( $deltatime / 3600 ); $timestring = "$deltatime時間前"; if ( $mday != $mdaynow ){ $timestring .= "(昨日の$hour時)"; } } elsif ( $monnow == $mon && $yearnow == $year ){ $timestring = ( $mdaynow - $mday ) . "日前(今月$mday日)$hour時"; } elsif ( $yearnow == $year ){ $timestring = "$mon月$mday日$hour時"; } else{ $timestring = "$year年$mon月$mday日"; } $timestring; } for(my $i=1; $i<100000000; $i*=1.3){ print deltatime( time - $i ), "=$i?n"; }
1秒前=1 1秒前=1.3 1秒前=1.69 2秒前=2.197 2秒前=2.8561 3秒前=3.71293 4秒前=4.826809 6秒前=6.2748517 8秒前=8.15730721 10秒前=10.604499373 13秒前=13.7858491849 17秒前=17.92160394037 23秒前=23.298085122481 30秒前=30.2875106592253 39秒前=39.3737638569929 51秒前=51.1858930140908 1分前=66.541660918318 1分前=86.5041591938135 1分前=112.455406951958 2分前=146.192029037545 3分前=190.049637748808 4分前=247.064529073451 5分前=321.183887795486 6分前=417.539054134132 9分前=542.800770374371 11分前=705.641001486683 15分前=917.333301932687 19分前=1192.53329251249 25分前=1550.29328026624 33分前=2015.38126434611 43分前=2619.99564364995 56分前=3405.99433674493 1時間前(昨日の23時)=4427.79263776841 1時間前(昨日の23時)=5756.13042909894 2時間前(昨日の22時)=7482.96955782862 2時間前(昨日の22時)=9727.86042517721 3時間前(昨日の21時)=12646.2185527304 4時間前(昨日の20時)=16440.0841185495 5時間前(昨日の19時)=21372.1093541143 7時間前(昨日の17時)=27783.7421603486 10時間前(昨日の15時)=36118.8648084532 13時間前(昨日の12時)=46954.5242509892 16時間前(昨日の8時)=61040.8815262859 22時間前(昨日の3時)=79353.1459841717 2日前(今月25日)20時=103159.089779423 2日前(今月25日)11時=134106.81671325 2日前(今月25日)0時=174338.861727225 3日前(今月24日)10時=226640.520245393 4日前(今月23日)15時=294632.676319011 5日前(今月22日)14時=383022.479214714 6日前(今月21日)6時=497929.222979128 8日前(今月19日)13時=647307.989872867 10日前(今月17日)7時=841500.386834727 13日前(今月14日)9時=1093950.50288515 17日前(今月10日)14時=1422135.65375069 22日前(今月5日)15時=1848776.3498759 9月29日5時=2403409.25483866 9月20日21時=3124432.03129026 9月10日0時=4061761.64067734 8月26日22時=5280290.13288055 8月8日14時=6864377.17274471 7月15日18時=8923690.32456812 6月14日18時=11600797.4219386 5月5日11時=15081036.6485201 3月14日3時=19605347.6430762 1月6日1時=25486951.935999 2003年10月9日=33133037.5167987 2003年6月16日=43072948.7718383 2003年1月17日=55994833.4033898 2002年7月7日=72793283.4244068 2001年10月27日=94631268.4517289
[2004年10月27日]
[2004年10月26日]
<< | 2021-1 | >> | ||||
日 | 月 | 火 | 水 | 木 | 金 | 土 |
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 |
2019/8/29
2019/5/28
2019/5/13
2018/12/9
2018/10/11