3v4l.org

run code in 150+ php & hhvm versions
Bugs & Features
<?php for($i=1;$i<1001;$i*=10) { $starttime=round( microtime(TRUE)*$i); $now= shortenb64($starttime); $len=strlen($now); $min= str_repeat("0", $len); $max= str_repeat("z", $len); $nowtime=date("Y-m-d H:i:s", $nowS=epxandb64($now)/$i); $minS=epxandb64($min)/$i; $maxS=epxandb64($max)/$i; $minYear = 1970+($minS/ (60*60*24*365.25)); $maxYear = 1970+($maxS/ (60*60*24*365.25)); echo "$i $starttime \t $now ($nowtime): \t min year ($minYear) \t max year ($maxYear)\n"; } function shortenb64($id, $alphabet='-0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz') { $base = strlen($alphabet); $short = ''; while($id) { $id = ($id-($r=$id%$base))/$base; $short = $alphabet{$r} . $short; } return $short; } function epxandb64($id, $alphabet='-0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz') { $base = strlen($alphabet); $len = strlen($id)-1; $long = 0.0; $mul=1; for($i=$len;$i>=0;$i--) { $long += strpos($alphabet, substr($id, $i,1))*$mul; $mul *= $base; } return $long; }
Output for 5.4.16 - 5.4.18, 5.4.20, 5.4.22, 5.4.24 - 5.4.25, 5.4.27 - 5.4.29, 5.4.31 - 5.4.32, 5.4.35 - 5.4.36, 5.4.39 - 5.4.41, 5.4.43, 5.4.45, 5.5.4 - 5.5.5, 5.5.7, 5.5.11 - 5.5.12, 5.5.14 - 5.5.18, 5.5.21, 5.5.23 - 5.5.27, 5.5.31, 5.5.34, 5.5.37 - 5.6.1, 5.6.4, 5.6.9, 5.6.11 - 5.6.13, 5.6.17, 5.6.20, 5.6.23, 5.6.25, 7.0.1 - 7.0.5, 7.0.9 - 7.1.0
1 1386773575 0He6l6 (2013-12-11 15:52:55): min year (2004.5649017986) max year (4147.5888133128) 10 13867735750 Bu_Cf5 (2013-12-11 15:52:55): min year (1973.4564901799) max year (2187.7588813313) 100 138677357500 108o7iw (2013-12-11 15:52:55): min year (1992.1215371514) max year (3363.6568405402) 1000 1386773575004 JAX8MKR (2013-12-11 15:52:55): min year (1972.2121537151) max year (2109.365684054)
Output for 5.2.0, 5.3.19 - 5.3.20, 5.3.24, 5.3.29, 5.4.8 - 5.4.9, 5.4.12 - 5.4.13, 5.4.15, 5.4.19, 5.4.23, 5.4.30, 5.4.34, 5.4.37 - 5.4.38, 5.4.42, 5.4.44, 5.5.0, 5.5.13, 5.5.20, 5.5.22, 5.5.28 - 5.5.30, 5.5.35, 5.6.5, 5.6.16, 5.6.21 - 5.6.22, 5.6.24, 7.0.0, 7.0.6 - 7.0.8
1 1386773575 0He6l6 (2013-12-11 15:52:55): min year (2004.5649017986) max year (4147.5888133128) 10 13867735750 Bu_Cf5 (2013-12-11 15:52:55): min year (1973.4564901799) max year (2187.7588813313) 100 138677357500 108o7iw (2013-12-11 15:52:55): min year (1992.1215371514) max year (3363.6568405402) 1000 1386773575003 JAX8MKQ (2013-12-11 15:52:55): min year (1972.2121537151) max year (2109.365684054)
Output for hhvm-3.12.0
1 1386773575 0He6l6 (2013-12-11 15:52:55): min year (2004.5649017986) max year (4147.5888133128) 10 13867735752 Bu_Cf7 (2013-12-11 15:52:55): min year (1973.4564901799) max year (2187.7588813313) 100 138677357516 108o7jB (2013-12-11 15:52:55): min year (1992.1215371514) max year (3363.6568405402) 1000 1386773575164 JAX8MMw (2013-12-11 15:52:55): min year (1972.2121537151) max year (2109.365684054)
Output for hhvm-3.10.0
1 1386773575 0He6l6 (2013-12-11 15:52:55): min year (2004.5649017986) max year (4147.5888133128) 10 13867735752 Bu_Cf7 (2013-12-11 15:52:55): min year (1973.4564901799) max year (2187.7588813313) 100 138677357516 108o7jB (2013-12-11 15:52:55): min year (1992.1215371514) max year (3363.6568405402) 1000 1386773575165 JAX8MMx (2013-12-11 15:52:55): min year (1972.2121537151) max year (2109.365684054)
Output for 5.4.26, 5.5.1 - 5.5.3, 5.5.6, 5.5.8 - 5.5.10, 5.5.32 - 5.5.33, 5.5.36, 5.6.2 - 5.6.3, 5.6.6, 5.6.8, 5.6.14 - 5.6.15, 5.6.18 - 5.6.19, 5.6.28
1 1386773575 0He6l6 (2013-12-11 15:52:55): min year (2004.5649017986) max year (4147.5888133128) 10 13867735750 Bu_Cf5 (2013-12-11 15:52:55): min year (1973.4564901799) max year (2187.7588813313) 100 138677357500 108o7iw (2013-12-11 15:52:55): min year (1992.1215371514) max year (3363.6568405402) 1000 1386773575005 JAX8MKS (2013-12-11 15:52:55): min year (1972.2121537151) max year (2109.365684054)
Output for 5.5.19, 5.6.7, 5.6.10
1 1386773575 0He6l6 (2013-12-11 15:52:55): min year (2004.5649017986) max year (4147.5888133128) 10 13867735750 Bu_Cf5 (2013-12-11 15:52:55): min year (1973.4564901799) max year (2187.7588813313) 100 138677357501 108o7ix (2013-12-11 15:52:55): min year (1992.1215371514) max year (3363.6568405402) 1000 1386773575005 JAX8MKS (2013-12-11 15:52:55): min year (1972.2121537151) max year (2109.365684054)
Output for 5.1.1 - 5.1.2, 5.1.4 - 5.1.6, 5.2.1 - 5.2.6, 5.2.8 - 5.2.14, 5.2.16 - 5.3.0, 5.3.2 - 5.3.18, 5.3.21 - 5.3.23, 5.3.25 - 5.3.28, 5.4.0 - 5.4.7, 5.4.10 - 5.4.11, 5.4.14, 5.4.21
1 1386773575 0He6l6 (2013-12-11 15:52:55): min year (2004.5649017986) max year (4147.5888133128) 10 13867735750 Bu_Cf5 (2013-12-11 15:52:55): min year (1973.4564901799) max year (2187.7588813313) 100 138677357500 108o7iw (2013-12-11 15:52:55): min year (1992.1215371514) max year (3363.6568405402) 1000 1386773575002 JAX8MKP (2013-12-11 15:52:55): min year (1972.2121537151) max year (2109.365684054)
Output for 5.0.0 - 5.1.0, 5.1.3, 5.2.7, 5.2.15, 5.3.1
1 1386773575 0He6l6 (2013-12-11 15:52:55): min year (2004.5649017986) max year (4147.5888133128) 10 13867735750 Bu_Cf5 (2013-12-11 15:52:55): min year (1973.4564901799) max year (2187.7588813313) 100 138677357500 108o7iw (2013-12-11 15:52:55): min year (1992.1215371514) max year (3363.6568405402) 1000 1386773575001 JAX8MKO (2013-12-11 15:52:55): min year (1972.2121537151) max year (2109.365684054)
Output for 4.3.0 - 4.4.6, 4.4.8 - 4.4.9
1 0 (1970-01-01 01:00:00): min year (1970) max year (1970) 10 0 (1970-01-01 01:00:00): min year (1970) max year (1970) 100 0 (1970-01-01 01:00:00): min year (1970) max year (1970) 1000 0 (1970-01-01 01:00:00): min year (1970) max year (1970)
Output for 4.4.7
1 0 (1970-01-01 01:00:00): min year (1970) max year (1970) 10 0 (1970-01-01 01:00:00): min year (1970) max year (1970) 100 0 (1970-01-01 01:00:00): min year (1970) max year (1970) 1000 1 0 (1970-01-01 01:00:00): min year (1970) max year (1970.000000002)