如何在PHP中删除十进制数的最后一位
我想删除PHP中十进制数的最后一位。 假设我有14.153。我希望是14点15分。我将执行此步骤,直到我的数字不再是十进制如何在PHP中删除十进制数的最后一位,php,Php,我想删除PHP中十进制数的最后一位。 假设我有14.153。我希望是14点15分。我将执行此步骤,直到我的数字不再是十进制 echo round(14.153, 2); // 14.15 舍入秒参数设置位数。您可以试试这个 <?php $number = 14.153; echo number_format($number,2); 我认为这应该有效: <?php $num = 14.153; $strnum = (string)$num; $parts = ex
echo round(14.153, 2); // 14.15
舍入秒参数设置位数。您可以试试这个
<?php
$number = 14.153;
echo number_format($number,2);
我认为这应该有效:
<?php
$num = 14.153;
$strnum = (string)$num;
$parts = explode('.', $num);
// $parts[0] = 14;
// $parts[1] = 153;
$decimalPoints = strlen($parts[1]);
// $decimalPoints = 3
if($decimalPoints > 0)
{
for($i=0 ; $i<=$decimalPoints ; $i++)
{
// substring($strnum, 0, 0); causes an empty result so we want to avoid it
if($i > 0)
{
echo substr($strnum, 0, '-'.$i).'<br>';
}
else
{
echo $strnum.'<br>';
}
}
}
?>
您是否需要一次执行一位数字,或者如果您同时执行所有操作,它是否也可以工作?请尝试使用number\u format()
或round()
?或者我不理解这个?我需要一次一次的算法。number\u format()
返回一个字符串round()
如果你要做进一步的数学计算,那将是更好的选择。如果你不做进一步的计算,你甚至可以使用substring。由于OP需要多次执行此操作,因此展示一种适合小数位数的方法可能会有所帮助,而不是硬编码2恐怕这会将数字四舍五入到第二个小数位数。由于OP需要多次执行此操作,显示适合小数位数的方法可能会有所帮助,而不是硬编码2恐怕这会将数字四舍五入到第二个小数位数。这是四舍五入,而不是按照OP的要求“删除”最后一个小数。编辑以考虑所有小数点的原始浮点。