为了账号安全,请及时绑定邮箱和手机立即绑定

如何使用php在十进制前后删除零

如何使用php在十进制前后删除零

PHP
慕村9548890 2021-10-08 14:42:56
下面的代码工作正常,但在第二个变量名 fixed_2 中为什么它显示小数点后的 3 位数字?我尝试了很多方法都没有任何希望。$text = "000892021.2408000";$fixed_1 = preg_replace('/000/','',$text);$fixed_2 = preg_replace('/.000/','',$text);$fixed_3 = preg_replace('/000./','',$text);var_dump($fixed_1);var_dump($fixed_2);var_dump($fixed_3);输出 string(11) "892021.2408" string(13) "000892021.240" string(13) "92021.2408000" 任何帮助请解释?
查看完整描述

2 回答

?
HUX布斯

TA贡献1876条经验 获得超6个赞

你可以使用嵌套的 ltrim() rtrim()

    $res = ltrim(rtrim($text, '0'), '0');


查看完整回答
反对 回复 2021-10-08
?
一只名叫tom的猫

TA贡献1906条经验 获得超3个赞

那么您用于 $fixed_2 的正则表达式是".000"。这意味着删除所有以任何字符开头后跟 3 个零的字符串。“。” 表示任何字符,因此它将匹配“8000”并将其删除。这就是为什么你在 $fixed_2 中得到“000892021.240”的输出


查看完整回答
反对 回复 2021-10-08
  • 2 回答
  • 0 关注
  • 137 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信