価格のデータを取得するテキスト ボックスを用意します。誰かが「3」のようなものを入力した場合。「3.0」に変換したい「0」を最後に追加することはできません。「100」の場合、「1000」に変換されるためです。
また、is_numeric("3.") は 1 を返します。
可能な方法は何ですか?
価格のデータを取得するテキスト ボックスを用意します。誰かが「3」のようなものを入力した場合。「3.0」に変換したい「0」を最後に追加することはできません。「100」の場合、「1000」に変換されるためです。
また、is_numeric("3.") は 1 を返します。
可能な方法は何ですか?
number_format()が必要です:
number_format('3', 1, '.', ''); // = 3.0
number_format('3.', 1, '.', ''); // = 3.0
number_format('3.22', 1, '.', ''); // = 3.2
number_format('3.22abc', 1, '.', ''); // = 3.2 and a "PHP Notice: A non well formed numeric value encountered"
number_format('abc3.22', 1, '.', ''); // = "PHP Warning: number_format() expects parameter 1 to be double, string given"
最初に float としてキャストしてから、number_format を使用してフォーマットしてみてください。
$number = (float) $_POST['text_box'];
number_format($number, 1, '.', '');
お役に立てれば
これには使用する必要がありますnumber_format()
。
number_format($number, 1, ".", "");
あなたのためにトリックを行います:
3
になる3.0
2500
になる2500.0