String to float PHP

calculate math expression from a string using eval
New Features in PHP 8.0

In this solution, we will learn how to convert string to float in PHP.

solution 1.

PHP function that finds a rational approximation to a given (positive) floating point number with a relative error less than $tolerance.

<?php
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";
}

printf("%s\n", float2rat(66.66667)); # 200/3
printf("%s\n", float2rat(sqrt(2)));  # 1393/985
printf("%s\n", float2rat(0.43212));  # 748/1731
calculate math expression from a string using eval
New Features in PHP 8.0
en English
X
Scroll to Top