我有这些数据:
number
1
2
3
7.215115151215
2.5545158432
0
2
我希望它是这样的:
number
1
2
3
7.21
2.55
0
2
我曾尝试使用数字格式和第2轮,但它总是会改变这样的事情:
number
1.00
2.00
3.00
7.21
2.55
0
2
答案 0 :(得分:5)
如果您想以php
1.23216
1.23
的方式改变您的数字格式number_format()
,则应使用is_float()
函数并使用{{1}检查数字是否为浮点类型
示例:
$num=1.2355645;
$numcheck1=(is_float(+$num))?number_format($num, 2):$num;
echo $numcheck1; //will display 1.23
另一方面:
$num=8;
$numcheck2=(is_float(+$num))?number_format($num, 2):$num;
echo $numcheck2; //will display 8
答案 1 :(得分:1)
尝试以下方法:
echo (float)number_format($num, 2);
答案 2 :(得分:1)
如果出于某种原因,您希望从MySQL以这种方式获取结果集,则可以执行
SELECT TRIM(TRAILING '.00' FROM ROUND(number, 2)) number
FROM table_name
结果:
mysql> SELECT TRIM(TRAILING '.00' FROM ROUND(number, 2)) number FROM table1; +--------+ | number | +--------+ | 1 | | 2 | | 3 | | 7.22 | | 2.55 | | 0 | | 2 | +--------+ 7 rows in set (0.00 sec)
虽然这是一个介绍问题,你最好在php中这样做。