正确删除带有小数点(例如0.1)的前导零

时间:2018-07-30 12:58:16

标签: php

我的目标是像这样删除前导零:

echo ltrim(000.1, '0'); // .1 (should end up as 0.1)
echo ltrim(0, '0'); // empty (should end up as 0)
echo ltrim(00005.5, '0'); // 5.5 (correct)

使用ltrim()可以很好地与00005.5之类的值一起使用,但不能与0.1的{​​{1}}一起使用(如逻辑所期望的那样)。

我的问题是,如何删除0之类的值中的前导零,并避免修剪值为0.5的值?

1 个答案:

答案 0 :(得分:4)

只需将其乘以1,php会将其强制转换为浮点型。

echo "000.1"*1 . "\n";  //0.1
echo "0"*1 . "\n";      //0 
echo "00005.5"*1 . "\n";//5.5

https://3v4l.org/mnN56

或将其浮起来

echo (float)"000.1" . "\n";
echo (float)"0" . "\n";
echo (float)"00005.5" . "\n";