1

小数点のない数を小数点のある数に変換する方法を知りたいです(私は現在、答えを知りませんし、見つけることができません)。

これが私がしたいことです。

Input         Output
1.20          1.20
1234          0.1234
0.23456       0.23456
4321          0.4321

したがって、基本的には、入力番号(フォームフィールド、変数などから)を受け入れ、整数の場合は先頭に0(ゼロドット)を追加するPHP関数が必要です。入力された数値にすでに小数が残っている場合はそのままにします(後で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 に答える