PHPで数値の桁数の数え方をサンプルコード付き解説!

この記事ではPHPで数値の桁数の数え方を解説しています。数値には整数と浮動小数点数があり、その桁数の数え方はそれぞれ別の方法で桁数を数える必要があります。2つのパターンの桁数の数え方についてサンプルコード付きで解説しています。

コンテンツ [表示]

  1. 1PHPで数値の桁数を数えたい
  2. 2PHPで数値の桁数の数え方
  3. 2.1整数の桁数の数え方
  4. 2.2浮動小数点数の桁数の数え方
  5. 3まとめ

PHPで数値の桁数を数えたい

PHPで金額などの数字の桁数をチェックしたいということもあります。

PHPで数字の桁数を数えてチェックする方法をサンプルコードを使って解説していきたいと思います。

Photo bylmonk72

PHPで数値の桁数の数え方

数値にはint型の整数とfloat型の浮動小数点数がありますが、それぞれに応じた方法で桁数を数える必要があります。

それぞれの方法について解説していきます。

整数の桁数の数え方

整数の桁数を数える場合には、strlen関数を使うことで桁数を数えることができます。

しかし、浮動小数点数の場合には上手く数えることができません。

桁数が10と表示されていることが確認できます。これはこの方法では小数点の部分もカウントされてしまうため正しく桁数を数えることができません。

小数点を含む浮動小数点数の場合は、次に紹介する方法で桁数を数えることができます。

浮動小数点数の桁数の数え方

浮動小数点の場合には、while文を使うことで桁数を数えることができます。

変数$numberに浮動小数点を代入し、変数$digitで桁数をカウントしていくため初期値には0を代入します。

while文の中で桁数を数えたい$number10で割り算します。その後、$digitをカウントします。それを$number1より小さくなるまで繰り返すように条件式で指定しています。

$number1より小さくなるまで10で割った回数が$digitに代入され、これが$numberの桁数に相当します。

桁数は6と表示され、正しく桁数を数えることができました。

まとめ

今回、桁数を数える方法を解説してきましたが、どちらも正の数値が桁数を数える対象でした。

負の数値をそのままで桁数を数えようとすると正しく桁数が数えられないので、abs関数などを使って絶対値に変換してから数える必要があるため注意してくださいね。

GeekHive採用サイト

関連記事