有一个获取价格数据的文本框。如果有人输入类似“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"
尝试先将其转换为浮点数,然后使用 number_format 对其进行格式化。
$number = (float) $_POST['text_box'];
number_format($number, 1, '.', '');
希望这可以帮助