PHP浮点数显示和转成字符串
程序员文章站
2023-12-28 13:15:34
...
你可能会觉得PHP中将浮点数(float)转成字符串非常简单, 但是, 常用的方法隐藏着严重的bug. 因为, PHP在处理浮点数时有非常不合理的做法, 会有精度丢失. 经研究, 其实是PHP在显示浮点数时的问题, 也可以说是BUG. PHP内置的echo, var_dump, json_encode, 字符串拼接等函数(指令)在显示浮点数时都有问题, 导致精度丢失.
$a = 1315537636.338467;
printf("%f", $a); echo "\n";
echo $a . "\n";
echo $a; echo "\n";
?>
结果
1315537636.338467
1315537636.3385
1315537636.3385
也就是说, 用PHP最顺手的方法将浮点数转成字符串或者显示是不行的, 必须使用printf/sprintf将浮点数转成字符串.
推荐阅读
-
php中将数组转成字符串并保存到数据库中的函数代码_php技巧
-
ThinkPHP的截取字符串函数无法显示省略号的解决方法_php实例
-
php 向访客和爬虫显示不同的内容_PHP教程
-
php字符串的替换,分割和连接方法,php字符串替换分割
-
PHP中空字符串介绍0、null、empty和false之间的关系_PHP
-
PHP获取一段文本显示点阵宽度和高度的方法
-
PHP字符串比较函数strcmp()和strcasecmp()使用总结,strcmpstrcasecmp_PHP教程
-
PHP字符串截取函数strlen和mb_strlen的区别,strlenmb_strlen_PHP教程
-
php向前端发送的字符串中存在HTML标签如何正常显示
-
vBulletin HACK----显示话题大小和打开新窗口于论坛索引页_PHP教程