3v4l.org

run code in 300+ PHP versions simultaneously
<?php echo whole_fraction(23.54); function whole_fraction($decimal){ $big_fraction = float2rat($decimal); $num_array = explode('/', $big_fraction); echo $big_fraction; $numerator = $num_array[0]; $denomenator = $num_array[1]; echo $numerator; echo "<br/>" echo $denomenator; $whole_number = floor( $numerator / $denominator ); $numerator = $numerator % $denomenator; $fraction = $whole_number . ' ' . $numerator . '/' . $denomenator; } function float2rat($n, $tolerance = 1.e-6) { $h1=1; $h2=0; $k1=0; $k2=1; $b = 1/$n; do { $b = 1/$b; $a = floor($b); $aux = $h1; $h1 = $a*$h1+$h2; $h2 = $aux; $aux = $k1; $k1 = $a*$k1+$k2; $k2 = $aux; $b = $b-$a; } while (abs($n-$h1/$k1) > $n*$tolerance); return "$h1/$k1"; }

Here you find the average performance (time & memory) of each version. A grayed out version indicates it didn't complete successfully (based on exit-code).

VersionSystem time (s)User time (s)Memory (MiB)
5.4.340.0040.04012.03
5.4.320.0070.03812.52
5.4.310.0080.03412.51
5.4.300.0050.03612.52
5.4.290.0060.03712.51
5.4.280.0080.03312.41
5.4.270.0090.03812.41
5.4.260.0060.03812.41
5.4.250.0080.04512.41
5.4.240.0060.03712.41
5.4.230.0070.03912.40
5.4.220.0040.03712.40
5.4.210.0090.03112.40
5.4.200.0060.03712.40
5.4.190.0070.03312.40
5.4.180.0050.04012.39
5.4.170.0110.03412.41
5.4.160.0050.03812.40
5.4.150.0070.03312.40
5.4.140.0060.03512.09
5.4.130.0070.03312.07
5.4.120.0050.03512.04
5.4.110.0050.03512.04
5.4.100.0100.02912.03
5.4.90.0040.03712.04
5.4.80.0040.03812.03
5.4.70.0060.03412.03
5.4.60.0080.03512.02
5.4.50.0090.03412.03
5.4.40.0030.03912.01
5.4.30.0050.03712.01
5.4.20.0090.03212.01
5.4.10.0090.04012.01
5.4.00.0070.03511.51
5.3.290.0060.04112.80
5.3.280.0080.03712.70
5.3.270.0040.04212.73
5.3.260.0070.04312.72
5.3.250.0050.04012.72
5.3.240.0040.04112.72
5.3.230.0070.03912.71
5.3.220.0070.03912.68
5.3.210.0090.04112.68
5.3.200.0080.03912.68
5.3.190.0070.04012.68
5.3.180.0040.03812.67
5.3.170.0060.03612.66
5.3.160.0060.04412.67
5.3.150.0030.03912.67
5.3.140.0040.03712.66
5.3.130.0070.04012.66
5.3.120.0030.04112.66
5.3.110.0090.04512.66
5.3.100.0080.04512.13
5.3.90.0060.03912.11
5.3.80.0080.03512.10
5.3.70.0050.04112.10
5.3.60.0070.03712.08
5.3.50.0060.03512.03
5.3.40.0070.03512.03
5.3.30.0070.03511.98
5.3.20.0070.03611.77
5.3.10.0070.04411.73
5.3.00.0050.05111.72
5.2.170.0050.0309.22
5.2.160.0030.0309.22
5.2.150.0060.0299.22
5.2.140.0050.0309.21
5.2.130.0080.0269.18
5.2.120.0060.0279.18
5.2.110.0030.0309.19
5.2.100.0070.0259.18
5.2.90.0050.0289.18
5.2.80.0040.0309.18
5.2.70.0030.0309.18
5.2.60.0080.0269.14
5.2.50.0050.0299.10
5.2.40.0030.0299.08
5.2.30.0040.0299.05
5.2.20.0030.0299.04
5.2.10.0040.0288.95
5.2.00.0080.0248.80
5.1.60.0020.0258.10
5.1.50.0030.0258.09
5.1.40.0030.0258.06
5.1.30.0030.0278.42
5.1.20.0050.0258.44
5.1.10.0030.0278.17
5.1.00.0040.0268.17
5.0.50.0040.0196.64
5.0.40.0030.0196.51
5.0.30.0030.0326.31
5.0.20.0050.0176.31
5.0.10.0030.0206.29
5.0.00.0040.0306.28
4.4.90.0030.0154.78
4.4.80.0030.0144.76
4.4.70.0020.0164.75
4.4.60.0000.0184.75
4.4.50.0020.0154.77
4.4.40.0030.0244.71
4.4.30.0030.0224.76
4.4.20.0040.0194.84
4.4.10.0040.0164.85
4.4.00.0050.0264.76
4.3.110.0010.0224.67
4.3.100.0020.0194.66
4.3.90.0010.0154.63
4.3.80.0020.0244.58
4.3.70.0010.0154.63
4.3.60.0020.0164.63
4.3.50.0040.0174.63
4.3.40.0000.0264.54
4.3.30.0020.0203.33
4.3.20.0030.0153.31
4.3.10.0040.0143.27
4.3.00.0100.0276.80

preferences:
136.32 ms | 1394 KiB | 7 Q