Heim >Backend-Entwicklung >PHP-Tutorial >Teilen Sie Beispiele für gängige PHP-Mathematikfunktionen und hochpräzise BC-Mathematikfunktionen

Teilen Sie Beispiele für gängige PHP-Mathematikfunktionen und hochpräzise BC-Mathematikfunktionen

小云云
小云云Original
2018-01-06 16:16:081980Durchsuche

In diesem Artikel wird hauptsächlich die Verwendung gängiger mathematischer PHP-Funktionen und hochpräziser BC-Funktionen vorgestellt. Er listet kurz gängige mathematische PHP-Funktionen auf und gibt die Funktionen und Verwendungsfähigkeiten hochpräziser BC-Funktionen an In Not können Sie sich auf Folgendes beziehen und hoffen, dass es allen helfen kann.

Die Beispiele in diesem Artikel beschreiben die Verwendung gängiger PHP-Mathematikfunktionen und hochpräziser BC-Mathematikfunktionen. Teilen Sie es als Referenz mit allen:

1. bcadd Addition beliebiger Präzisionszahlen
bcmul Multiplikation, bcp Division
4 . bcmod übernimmt den Rest. (Leistungsstärker als %)
5. bcsqrt-Quadratwurzeloperation
7. pow-Potenzierung
9. pi erhält den Pi-Wert


trigonometrische Funktion

sin cos tan asin acos atan (ausgedrückt im Bogenmaß)deg2rad Winkel wird in Bogenmaß umgewandeltrad2deg Konvertieren Sie Bogenmaß in Winkel


Exponent

log, um den natürlichen Logarithmus zu finden, log10, um den Logarithmus zur Basis 10 zu findenexp die Potenz von e as die Basis

Verschiedene Zahlensystemkonvertierungen

base_convert Universelle beliebige Zahlensystemkonvertierungbindec Binär in Dezimal umwandelndecbin Dezimal in Binär umwandeln

dechex Dezimalzahl in Hexadezimalzahl umwandeln

decoct Dezimalzahl in Oktalzahl umwandeln
hexdec Hexadezimalzahl in Dezimalzahl umwandeln
octdec Oktalzahl in Dezimalzahl umwandeln


BC-Hochpräzisionsfunktionsverwendungsbeispiel:

Laufergebnisse:

<?php
 /***************************************************************************************
 *php BC高精确度函数库
 *php bc math 包含了:相加,比较,相除,相减,求余,相乘,n次方,配置默认小数点数目,求平方
 *这些函数在涉及到有关金钱的计算时比较有用
 ***************************************************************************************
 *两个高精度数比较
 *工作中遇到一种情况,0.00 != 0
 *int bccomp ( string $left_operand , string $right_operand [, int $scale ] )
 *$left=$right 返回 0
 *$left<$right 返回 -1
 *$left>$right 返回 1
 *$scale 小数点位数
 ***************************************************************************************/
$a = 4.45;
$b = 5.54;
if(bccomp($a, $b, 2) == 0)
{
 echo "完全相等";
}
/***************************************************************************************
 *两个高精度数相加
 *string bcadd ( string $left_operand , string $right_operand [, int $scale ] )
 *$scale 返回的小数点个数
 ***************************************************************************************/
$a = 1.0321456;
$b = 0.0123456;
$c = bcadd($a, $b, 2);
var_dump($c);
/***************************************************************************************
 *两个高精度数相减
 *sstring bcsub ( string $left_operand , string $right_operand [, int $scale ] )
 *$scale 返回的小数点个数
 ***************************************************************************************/
$a = 1.0321456;
$b = 3.0123456;
$c = bcsub($a, $b, 2);
var_dump($c);
/********************************************************
 *两个高精度数求余/取模
 *string bcmod ( string $left_operand , string $modulus )
 *******************************************************/
$a = 6;
$b = 4;
$c = bcmod($a, $b);
var_dump($c);
/***************************************************************************************
 *两个高精度数相除
 *string bcp ( string $left_operand , string $right_operand [, int $scale ] )
 *$scale小数点位数默认为 0
 ***************************************************************************************/
 $a = 6;
 $b = 5;
 $c = bcp($a, $b, 3);
 var_dump($c);
/***************************************************************************************
 *两个高精度数相乘
 *string bcmul ( string $left_operand , string $right_operand [, int $scale ] )
 *$scale小数点位数默认为 0
 ***************************************************************************************/
$a = 3.1415926;
$b = 2.4569874566;
$c = bcmul($a, $b, 6);
var_dump($c);
/***************************************************************************************
 *两个高精度数的次方值
 *string bcpow ( string $left_operand , string $right_operand [, int $scale ] )
 *$scale小数点位数默认为 0
 ***************************************************************************************/
$a = 3.1415926;
$b = 2;
$c = bcpow($a, $b, 3);
var_dump($c);
/**************************************************
 *求高精度数的平方根
 *string bcsqrt ( string $operand [, int $scale ] )
 *$scale小数点位数默认为 0
 ***************************************************/
$b = bcsqrt($a, 6);
var_dump($b);
/******************************
 *设置bc函数的小数点位数
 *bool bcscale ( int $scale )
 *$scale小数点位数默认为 0
 ******************************/
bcscale(2);
?>


Verwandte Empfehlungen:
string(4) "1.04"
string(5) "-1.98"
string(1) "2"
string(5) "1.200"
string(8) "7.718853"
string(5) "9.869"
string(8) "1.772453"

Funktionszusammenfassung der hochpräzisen PHP-Mathematik-Funktionsbibliothek

Eine kurze Zusammenfassung der MySQL-Mathefunktionen

PHP-Mathe-Funktionserweiterung

Das obige ist der detaillierte Inhalt vonTeilen Sie Beispiele für gängige PHP-Mathematikfunktionen und hochpräzise BC-Mathematikfunktionen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn