数値が科学的表記法で表示されないようにするために長い桁の数値演算を使用する PHP の例

*文
リリース: 2023-03-18 19:20:02
オリジナル
2193 人が閲覧しました

この記事では、超長い (超大きな) 数値演算を使用して数値が科学表記法で表示されないようにする PHP の方法を主に紹介し、PHP の数学演算と文字列演算の関連スキルを説明します。お役に立てれば幸いです。この記事では、PHP が超長い (超大きい) 数値演算を使用して数値が科学的表記法で表示されないようにする方法の例を説明します。参考のために共有したいと思います。

詳細は次のとおりです:

数値が大きすぎると、PHP でエラーが発生します。そこで、PHP で加算、減算などの非常に大きな数値演算を実行する方法を説明します。乗算と除算、べき乗演算、平方根、および剰余演算についてはどうでしょうか?

科学的記数法の問題を解決するには、値を割り当てるときに一対の引用符を追加するだけです。

例:

<?php
$n = &#39;22222222222222222222222222220&#39;;
echo $n;
?>
ログイン後にコピー

If you'd引用符を追加すると、2.2222222222222E+28 が表示されます。引用符を追加すると、2222222222222222222222222220 が表示されます。

加算、減算、乗算、除算、累乗演算、平方根、および剰余演算を含む、非常に大きな数値演算

。 PHP の bcmath 関数を使用してカスタム関数を作成します。コードは次のとおりです。

<?php
function calc($m,$n,$x){
  $errors=array(
    &#39;被除数不能为零&#39;,
    &#39;负数没有平方根&#39;
  );
  switch($x){
    case &#39;add&#39;:
      $t=bcadd($m,$n);
      break;
    case &#39;sub&#39;:
      $t=bcsub($m,$n);
      break;
    case &#39;mul&#39;:
      $t=bcmul($m,$n);
      break;
    case &#39;p&#39;:
      if($n!=0){
        $t=bcp($m,$n);
      }else{
        return $errors[0];
      }
      break;
    case &#39;pow&#39;:
      $t=bcpow($m,$n);
      break;
    case &#39;mod&#39;:
      if($n!=0){
        $t=bcmod($m,$n);
      }else{
        return $errors[0];
      }
      break;
    case &#39;sqrt&#39;:
      if($m>=0){
        $t=bcsqrt($m);
      }else{
        return $errors[1];
      }
      break;
  }
  $t=preg_replace("/\..*0+$/",&#39;&#39;,$t);
  return $t;
}
/*用法举例*/
echo calc(&#39;11111111111111111111111111111111110&#39;,&#39;10&#39;,&#39;add&#39;);
?>
ログイン後にコピー

使用法:

calc(parameter 1 parameter 2, parameter 3);
Parameter 3 は演算方法を指定します: add、subtract、mul、divid by p、pow、modulo、sqrt の累乗で算術平方根を求めます
加算、減算、除算: パラメーター 1 パラメーター 2 を加算/減算/乗算/除算します
べき乗: パラメーター 1 のパラメーター 2 の累乗です。
モジュール:パラメーター 1 をパラメーター 2 で除算した余り。
算術平方根: パラメーター 1 の算術平方根を求めます。 パラメーター 2 は影響しませんが、省略できません。

関連の推奨:

php の詳細な紹介。演算子と式への_phpの例

phpの基本関数

PHP 6: PHPの基本データ型

以上が数値が科学的表記法で表示されないようにするために長い桁の数値演算を使用する PHP の例の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!