代码:
/**
* 浮点小数位保留(字符串切割) - 舍去
*
* @param string $number 数值
* @param int $digit [可选]保留位数,默认:3
*
* @return int|float
*/
function floatDecimalExcision(string $number,$digit=3)
{
$number = explode('.',$number);
$digit = $digit - 1;
if (empty($number[1]))return intval($number[0]);
$number[1] = str_split($number[1]);
foreach ($number[1] AS $i=>$val)
{
if ($i>$digit){
unset($number[1][$i]);
}
}
$number[1] = implode('',$number[1]);
return floatval(implode('.',$number));
}
示例:
$_s = '1213231203.8888888';
floatDecimalExcision($_s); // 结果:1213231203.888
$_s = '123.8888888';
floatDecimalExcision($_s); // 结果:123.888