1

我想知道(因为我目前不知道也找不到答案)如何将没有小数点的数字变成带小数点的数字。

这就是我想要发生的事情。

Input         Output
1.20          1.20
1234          0.1234
0.23456       0.23456
4321          0.4321

所以基本上我需要一个接受输入数字(来自表单字段、变量或其他)的 PHP 函数,如果一个整数在开头添加 0.(零点)。如果输入的数字已经按原样保留了小数点(之后我将使用 number_format)。

4

4 回答 4

2

这个简单的解决方案应该可以做到。

function to_decimal($in){
    return (stripos($in, ".")!==false)? $in: "0.".$in;
}
于 2013-01-22T08:25:56.507 回答
0

你可以用is_float做这样的事情

if (!is_float($input))
{
  $result = "0." . $input
}
于 2013-01-22T08:24:51.757 回答
0

试试这个

function dPoint($number)
{
    if(is_float($number))
    {
    return $number;
    }
    else
    {
    return "0.".$number;
    }
}
于 2013-01-22T08:25:00.913 回答
0

这是我没有蹩脚字符串连接的解决方案

function leadingZero($num) {
  if (!ctype_digit($num)) {
     return $num/pow(10, strlen($num));
  }
  return $num;
}
// php> =leadingZero(4652)
// 0.4652
// php> =leadingZero(0.2)
// 0.2
于 2013-01-22T08:29:28.777 回答