Php 解析浮点字符串并在小数部分保留零
我有个问题,我发现了这个,但这不是我需要的解决方案 我有f.e.字符串Php 解析浮点字符串并在小数部分保留零,php,floating-point,Php,Floating Point,我有个问题,我发现了这个,但这不是我需要的解决方案 我有f.e.字符串48.453150 e,我只需要从中提取浮点数,当我使用(float),它将返回48.45315,但我需要在小数部分末尾保留零。我不知道小数部分有多少位,可以是各种各样的 有没有办法解析浮点字符串并保留零?当您将数字解析为浮点时,它不是字符串,因此尾随数字的概念没有意义 要显示数字时,请使用number\u格式($number,5)将其转换为小数点后有5位数字的字符串。这将包括尾随的零。只需使用简单的函数,其工作良好: fun
48.453150 e
,我只需要从中提取浮点数,当我使用(float)
,它将返回48.45315
,但我需要在小数部分末尾保留零。我不知道小数部分有多少位,可以是各种各样的
有没有办法解析浮点字符串并保留零?当您将数字解析为浮点时,它不是字符串,因此尾随数字的概念没有意义
要显示数字时,请使用
number\u格式($number,5)
将其转换为小数点后有5位数字的字符串。这将包括尾随的零。只需使用简单的函数,其工作良好:
function get_number($str) {
$number = '';
$allowed = array('.');
for ($i = 0; $i <= 9; $i++) {
$allowed[] = (string)$i;
}
for ($i = 0; $i < strlen($str); $i++) {
if (in_array($str{$i}, $allowed)) {
$number .= $str{$i};
}
else {
break;
}
}
return $number;
}
函数get_number($str){
$number='';
$allowed=数组('.');
对于($i=0;$i,但我不知道小数点后会有多少位,我需要相同的,因为它是在原始字符串中。然后,首先不要将其转换为浮点,使用字符串。也许你是对的,也许最好遍历整个字符串,当到达非数字和小数点时停止。