我在 mysql 表中有两种类型的数字(FLOAT 和 BIGINT)。
答:0.002
乙:51443234
我需要替换“。” 在数字中带有“,”,我可以通过 number_format 来完成
foreach ($row as $key => $val) {
if (is_numeric($val)) {
$row[$key] = number_format($val,'3', ',', '.'); }
}
}
新格式是:
答:0,002
乙:51.443.234,000
但我不希望数字 B 中的尾随零,所以我尝试分别格式化 FLOAT 和 BIGINT 值:
foreach ($row as $key => $val) {
if (is_numeric($val)) {
if (is_float($val)) {
$row[$key] = number_format($val,'3', ',', '.'); }
else {
$row[$key] = number_format($val,'0', ',', '.'); }
}
}
但这不起作用。
我不确定问题出在哪里,是否可以在不将值转换为字符串的情况下做到这一点。
(我也不知道转换为字符串有什么缺点..)
你能展示一下正确的方法吗?谢谢你。