我有这样的值:
0.00000001
1.49000000
主要目标是在页面上显示 0.00000001 而不是 1E8。
这是我的代码:
function correct_amount($amount) {
$corrected=rtrim(sprintf('%.8F', $amount), '0');
return $corrected;
}
这非常有效,但仅在以下情况下:
1.92940000 -> 1.9294
1.04000000 -> 1.04
但是对于"整数",我有以下结果:
1.00000000 -> 1.
15.00000000 -> 15.
如何更改代码以获取不带点或带 .00 的值?
您可以在 0 之前加上一个点,用于 rtrim。
function correct_amount($amount){
$corrected = rtrim(sprintf('%.8F', $amount),'.0');
return $corrected;
}
brixenDK的答案几乎是好的。它有一个错误,因为 rtrim 单独使用模式中的所有字符。1000 将是 1。
brixenDK的校正解决方案:
function correct_amount($amount){
$corrected = rtrim(rtrim(sprintf('%.8F', $amount),'0'),'.');
return $corrected;
}