Maison  >  Article  >  développement back-end  >  PHP精确计算功能示例

PHP精确计算功能示例

黄舟
黄舟original
2017-02-25 09:29:531242parcourir

本文实例讲述了PHP精确计算功能。分享给大家供大家参考,具体如下:

引言:一定要确保数据的准确性。这是一个好的程序员的基本素养。

<?php
/**
 * 精确加法
 * @param [type] $a [description]
 * @param [type] $b [description]
 */
function math_add($a,$b,$scale = &#39;2&#39;) {
  return bcadd($a,$b,$scale);
}
/**
 * 精确减法
 * @param [type] $a [description]
 * @param [type] $b [description]
 */
function math_sub($a,$b,$scale = &#39;2&#39;) {
  return bcsub($a,$b,$scale);
}
/**
 * 精确乘法
 * @param [type] $a [description]
 * @param [type] $b [description]
 */
function math_mul($a,$b,$scale = &#39;2&#39;) {
  return bcmul($a,$b,$scale);
}
/**
 * 精确除法
 * @param [type] $a [description]
 * @param [type] $b [description]
 */
function math_p($a,$b,$scale = &#39;2&#39;) {
  return bcp($a,$b,$scale);
}
/**
 * 精确求余/取模
 * @param [type] $a [description]
 * @param [type] $b [description]
 */
function math_mod($a,$b) {
  return bcmod($a,$b);
}
/**
 * 比较大小
 * @param [type] $a [description]
 * @param [type] $b [description]
 * 大于 返回 1 等于返回 0 小于返回 -1
 */
function math_comp($a,$b,$scale = &#39;5&#39;) {
  return bccomp($a,$b,$scale); // 比较到小数点位数
}
echo math_add(&#39;3.445&#39;,&#39;3.444&#39;)."\n"; // 加 6.88
echo math_sub(&#39;3.445&#39;,&#39;3.444&#39;)."\n"; // 减 0.00
echo math_mul(&#39;3.445&#39;,&#39;3.444&#39;)."\n"; // 乘 11.86
echo math_p(&#39;3.445&#39;,&#39;3.444&#39;)."\n"; // 除 1.00
echo math_mod(&#39;3.445&#39;,&#39;3.444&#39;)."\n"; // 取模 0
echo math_comp(&#39;3.445&#39;,&#39;3.444&#39;)."\n";// 比较 1
echo math_add(&#39;3.445&#39;,&#39;3.444&#39;,&#39;3&#39;)."\n"; // 加 6.889
echo math_sub(&#39;3.445&#39;,&#39;3.444&#39;,&#39;3&#39;)."\n"; // 减 0.001
echo math_mul(&#39;3.445&#39;,&#39;3.444&#39;,&#39;3&#39;)."\n"; // 乘 11.864
echo math_p(&#39;3.445&#39;,&#39;3.444&#39;,&#39;3&#39;)."\n"; // 除 1.000
echo math_mod(&#39;3.445&#39;,&#39;3.444&#39;)."\n"; // 取模 0
echo math_comp(&#39;3.445&#39;,&#39;3.444&#39;)."\n";// 比较 1
?>

以上就是PHP精确计算功能示例 的内容,更多相关内容请关注PHP中文网(www.php.cn)!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn