1. ホーム
  2. php

PHP で末尾のゼロを除去する方法

2023-10-28 06:50:51

質問

PHP を使用して数値から末尾のゼロを取り除く方法について、誰か説明(と多分例)をしていただけませんか。

例えば

"Lat":"37.422005000000000000000000000000","Lon":"-122.84095000000000000000000000000"

に回されるでしょう。

"Lat":"37.422005","Lon":"-122.84095"

私はより読みやすくするためにゼロを取り除こうとしています。私は str_replace() を使ってみましたが、これは数字の中のゼロも置き換えてしまいます。

どのように解決するのですか?

rtrims や正規表現をすべて忘れ、座標は浮動小数点数として扱われるべきです。 (float) を前置して文字列から浮動小数点にキャストしてください。

$string = "37.422005000000000000000000000000";
echo (float)$string;

を出力します。

37.422005

実際の結果は浮動小数点数ですが、HTTPプロトコルにより文字列として渡されるため、計算などを行うために自然な形に戻すとよいでしょう。

テストケースです。 http://codepad.org/TVb2Xyy3

注意 : PHPの浮動小数点精度についてのコメントについては、こちらを参照してください。 https://stackoverflow.com/a/3726761/353790