3v4l.org

run code in 150+ php & hhvm versions
Bugs & Features
<?php $whole = floor ( $float ); $decimal = $float - $whole; $leastCommonDenom = 48; // 16 * 3; $denominators = array (2, 3, 4, 8, 16, 24, 48 ); $roundedDecimal = round ( $decimal * $leastCommonDenom ) / $leastCommonDenom; if ($roundedDecimal == 0) return $whole; if ($roundedDecimal == 1) return $whole + 1; foreach ( $denominators as $d ) { if ($roundedDecimal * $d == floor ( $roundedDecimal * $d )) { $denom = $d; break; } } return ($whole == 0 ? '' : $whole) . " " . ($roundedDecimal * $denom) . "/" . $denom; //echo toFraction( -0.5) . "\n" . toFraction( 1.5);
Output for 5.0.4 - 5.0.5, 5.1.1 - 5.6.28, hhvm-3.10.0 - 3.13.2, 7.0.0 - 7.1.0
Notice: Undefined variable: float in /in/pnsXd on line 2 Notice: Undefined variable: float in /in/pnsXd on line 3
Output for 5.1.0
Fatal error: fatal flex scanner internal error--end of buffer missed in /in/pnsXd on line 20
Process exited with code 255.
Output for 4.3.0 - 5.0.3
Notice: Undefined variable: float in /in/pnsXd on line 2 Notice: Undefined variable: float in /in/pnsXd on line 3