ホームページ >php教程 >php手册 >PHP浮動小数点数の表示と文字列への変換

PHP浮動小数点数の表示と文字列への変換

WBOY
WBOYオリジナル
2016-06-21 08:52:322125ブラウズ

PHP で浮動小数点数 (float) を文字列に変換するのは非常に簡単だと思われるかもしれませんが、一般的に使用されている方法には重大なバグが隠されています。これは、調べた結果、PHP では浮動小数点数を扱う際に非常に不合理な慣行があり、精度が失われます。 、実際には、PHP が浮動小数点数を表示するときに問題があり、これは Echo、var_dump、json_encode、文字列連結などの PHP の組み込み関数 (命令) のすべてが浮動小数点数を表示するときに問題があるとも言えます。結果として精度が失われます。

$a = 1315537636.338467;

printf("%f", $a); echo "n";

echo $a . "n";

エコー $a; エコー "n";

?>

結果

1315537636.338467

1315537636.3385

1315537636.3385

つまり、浮動小数点数を文字列に変換したり表示したりするために、PHP の最も便利な方法を使用することはできません。浮動小数点数を文字列に変換するには、printf/sprintf を使用する必要があります。



声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。