Nekonzistentne dump float data ako return type declaration

duskohu
Člen | 778
+
0
-

Ahojte stretli ste sa uz s tymto problemom? prisiel som na to ked mi jedno API nadavalo ze posielam velky retazec,
pri volani getPrice2 mi to vracia 9.9000000000000003552713678800500929355621337890625, pri dumpovani som prisiel este na jednu zahadu ze ked to dam var_dump a echo , tak to vracia dobre. A aby to bolo zaujimavejsie ked odstranim return type declaration ?float tak to problem vyriesi. Ale to nieje riesenie problemu vsakze :-)

PHP Version 7.1.33
Na mojo lokalnom php mam tu istu verziu to nerobi, neviem prist na to v com je hacik.
Vie mi niekto poradit?

use Tracy\Debugger;
require __DIR__ . '/../vendor/autoload.php';

function getPrice2(): ?float
{
    return '9.90';
}
Debugger::enable(Debugger::DEVELOPMENT);
Debugger::barDump(getPrice2()); // return 9.9000000000000003552713678800500929355621337890625
echo getPrice2(); // return 9.9
var_dump(getPrice2()); // return 9.9
Martk
Člen | 651
+
0
-

Tracy používá json_encode na floaty https://bugs.php.net/bug.php?…

Editoval Martk (9. 11. 2021 12:39)

duskohu
Člen | 778
+
0
-

Martk napsal(a):

Tracy používá json_encode na floaty https://bugs.php.net/bug.php?…

@Martk dik