ホームページ > バックエンド開発 > PHPチュートリアル > PHP が科学表記法で小さな数値を表示するのはなぜですか? それらを小数としてフォーマットするにはどうすればよいですか?

PHP が科学表記法で小さな数値を表示するのはなぜですか? それらを小数としてフォーマットするにはどうすればよいですか?

Susan Sarandon
リリース: 2024-12-11 10:07:10
オリジナル
199 人が閲覧しました

Why Does PHP Display Small Numbers in Scientific Notation, and How Can I Format Them as Decimals?

10 進形式を指定しているにもかかわらず、PHP が数値を科学表記法で出力する理由

PHP で、数値が として割り当てられるという問題が発生しました。 000021 は科学表記法では 2.1E-5 として印刷されます。この動作を理解し、解決策を見つけるために、問題を詳しく調べてみましょう。

この問題は、PHP が数値 .000021 を浮動小数点数として解釈するために発生します。 PHP の浮動小数点数の精度には限界があり、小さすぎたり大きすぎたりする場合、多くの場合科学表記法で表示されます。これは、値の精度を維持するために行われます。

この問題を解決し、数値が目的の 10 進形式で印刷されるようにするには、number_format() 関数を使用できます。 number_format() 関数を使用すると、表示する小数点以下の桁数を指定できます。

number_format() を使用した例を次に示します。

$var = .000021;
echo number_format($var, 5); // Output: 0.00002
ログイン後にコピー

この例では、number_format() を使用して次のことを行います。数値を小数点以下 5 桁でフォーマットすることを指定します。結果として、出力は 0.00002 となり、要件を満たします。

あるいは、sprintf() 関数を使用して同じ結果を達成することもできます。

$var = .000021;
echo sprintf("%.5f", $var); // Output: 0.00002
ログイン後にコピー

sprintf を使用することにより、 () では、小数点以下 5 桁の浮動小数点数が必要であることを指定します。 number_format() と sprintf() の両方を使用すると、数値の出力形式を制御できるため、目的の結果を達成できます。

以上がPHP が科学表記法で小さな数値を表示するのはなぜですか? それらを小数としてフォーマットするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート