Maison >développement back-end >tutoriel php >Utilisation courante des fonctions mathématiques en PHP
Cet article présente principalement l'utilisation des fonctions mathématiques courantes en PHP. Il répertorie brièvement les fonctions d'opérations mathématiques courantes en PHP et donne les fonctions et les compétences d'utilisation des fonctions de haute précision bc sous la forme d'exemples auxquels les amis dans le besoin peuvent se référer. it
Les exemples de cet article décrivent l'utilisation de fonctions mathématiques PHP courantes et de fonctions mathématiques de haute précision BC. Partagez-le avec tout le monde pour votre référence, les détails sont les suivants :
1. bcadd Ajout de nombres de précision arbitraires
2 bcsub Soustraction de nombres de précision arbitraires
3. multiplication bcmul, division bcp<.>4 . bcmod prend le reste. (Plus puissant que %)
5. Opération de fonction de puissance bcpow
6. Racine carrée bcsqrt
7. Opération de racine carrée sqrt
7. exponentiation pow
8. >9. pi obtient la valeur de pi
sin cos tan asin acos atan (exprimé en radians)
deg2rad L'angle est converti en radiansrad2deg Convertir des radians en angles
log pour trouver le logarithme népérien, log10 pour trouver le logarithme à la base 10
exp à la puissance de e comme base
base_convert Conversion universelle de systèmes numériques arbitraires
bindec Convertir le binaire en décimaldecbin Convertir le décimal en binaire
dechex Convertir le décimal en hexadécimal
decoct Convertir le décimal en octal
hexdec Convertir le hexadécimal en décimal
octdec Convertir l'octal en décimal
<?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); ?>
Résultats d'exécution :
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"Connexes recommandés :
Développement d'extensions PHP pour développer notre propre bibliothèque de fonctions mathématiquesFonction mathématique-chaîne-tableau-JavaScriptPartage d'exemples de fonctions mathématiques PHP courantes et de fonctions mathématiques de haute précision BC
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!