PHP精确计算功能示例

yipeiwu_com6年前PHP代码库

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

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

<?php
/**
 * 精确加法
 * @param [type] $a [description]
 * @param [type] $b [description]
 */
function math_add($a,$b,$scale = '2') {
  return bcadd($a,$b,$scale);
}
/**
 * 精确减法
 * @param [type] $a [description]
 * @param [type] $b [description]
 */
function math_sub($a,$b,$scale = '2') {
  return bcsub($a,$b,$scale);
}
/**
 * 精确乘法
 * @param [type] $a [description]
 * @param [type] $b [description]
 */
function math_mul($a,$b,$scale = '2') {
  return bcmul($a,$b,$scale);
}
/**
 * 精确除法
 * @param [type] $a [description]
 * @param [type] $b [description]
 */
function math_div($a,$b,$scale = '2') {
  return bcdiv($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 = '5') {
  return bccomp($a,$b,$scale); // 比较到小数点位数
}
echo math_add('3.445','3.444')."\n"; // 加 6.88
echo math_sub('3.445','3.444')."\n"; // 减 0.00
echo math_mul('3.445','3.444')."\n"; // 乘 11.86
echo math_div('3.445','3.444')."\n"; // 除 1.00
echo math_mod('3.445','3.444')."\n"; // 取模 0
echo math_comp('3.445','3.444')."\n";// 比较 1
echo math_add('3.445','3.444','3')."\n"; // 加 6.889
echo math_sub('3.445','3.444','3')."\n"; // 减 0.001
echo math_mul('3.445','3.444','3')."\n"; // 乘 11.864
echo math_div('3.445','3.444','3')."\n"; // 除 1.000
echo math_mod('3.445','3.444')."\n"; // 取模 0
echo math_comp('3.445','3.444')."\n";// 比较 1
?>

更多关于PHP相关内容感兴趣的读者可查看本站专题:《PHP数学运算技巧总结》、《PHP运算与运算符用法总结》、《php字符串(string)用法总结》、《PHP数组(Array)操作技巧大全》、《PHP常用遍历算法与技巧总结》、《PHP数据结构与算法教程》、《php程序设计算法总结》、《php正则表达式用法总结》及《php常见数据库操作技巧汇总

希望本文所述对大家PHP程序设计有所帮助。

相关文章

PHP的可变变量名的使用方法分享

通常变量通过下面这样的语句来命名 : 复制代码 代码如下: <?php $a = 'hello'; ?> 可变变量名指的是使用一个变量的值作为这个变量的名称。在上面的例子中...

微信公众平台开发教程⑥ 微信开发集成类的使用图文详解

微信公众平台开发教程⑥ 微信开发集成类的使用图文详解

本文实例讲述了微信公众平台开发之微信开发集成类的使用。分享给大家供大家参考,具体如下: 背景   这几天又在接触微信PHP方面的开发,认为之前写的文章确实有些乱,刚好发现了一...

php一句话cmdshell新型 (非一句话木马)

php一句话cmdshell新型 (非一句话木马)

复制代码 代码如下:<?php /*一个新型的php一句话cmdshell(非一句话木马) //原理:php运行时如果遇见字符``(键盘上~符号的下档键)总会尝试着执行``里面包含...

Ajax+PHP边学边练 之五 图片处理

Ajax+PHP边学边练 之五 图片处理

先上个效果图:  Sample6_1.php 中创建Form: 复制代码 代码如下: //显示上传状态和图片 <div id="showimg"></div...

php调用c接口无错版介绍

php调用c接口无错版介绍

1.首先是要安装好PHP2.进入PHP的下载解压目录下的ext目录#cd /root/php-5.3.6/ext#./ext_skel --extname=hmc说明:./ext_ske...