PHP精确计算功能示例


Posted in PHP onNovember 29, 2016

本文实例讲述了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 相关文章推荐
使用sockets:从新闻组中获取文章(一)
Oct 09 PHP
php之字符串变相相减的代码
Mar 19 PHP
如何用PHP实现插入排序?
Apr 10 PHP
PHP封装的一个支持HTML、JS、PHP重定向的多功能跳转函数
Jun 19 PHP
ThinkPHP 3.2 数据分页代码分享
Oct 14 PHP
Windows下的PHP安装pear教程
Oct 24 PHP
php实现计数器方法小结
Jan 05 PHP
php目录拷贝实现方法
Jul 10 PHP
php结合md5实现的加密解密方法
Jan 25 PHP
php实现转换html格式为文本格式的方法
May 16 PHP
浅谈socket同步和异步、阻塞和非阻塞、I/O模型
Dec 15 PHP
php中数组最简单的使用方法
Dec 27 PHP
PHP 搜索查询功能实现
Nov 29 #PHP
php Session无效分析资料整理
Nov 29 #PHP
php 实现Hash表功能实例详解
Nov 29 #PHP
php文件上传 你真的掌握了吗
Nov 28 #PHP
php微信公众号js-sdk开发应用
Nov 28 #PHP
php微信高级接口调用方法(自定义菜单接口、客服接口、二维码)
Nov 28 #PHP
php微信公众平台交互与接口详解
Nov 28 #PHP
You might like
PHP脚本的10个技巧(4)
2006/10/09 PHP
IIS下配置Php+Mysql+zend的图文教程
2006/12/08 PHP
微信公众平台开发关注及取消关注事件的方法
2014/12/23 PHP
静态html文件执行php语句的方法(推荐)
2016/11/21 PHP
自制PHP框架之设计模式
2017/05/07 PHP
Microsfot .NET Framework4.0框架 安装失败的解决方法
2013/08/14 Javascript
JS实现日期加减的方法
2013/11/29 Javascript
JavaScript开发人员的10个关键习惯小结
2014/12/05 Javascript
JavaScript插件化开发教程 (三)
2015/01/27 Javascript
JS+CSS实现实用的单击输入框弹出选择框的方法
2015/02/28 Javascript
uploadify多文件上传参数设置技巧
2015/11/16 Javascript
jQuery+css实现炫目的动态块漂移效果
2016/01/28 Javascript
JavaScript 轮播图和自定义滚动条配合鼠标滚轮分享代码贴
2016/10/28 Javascript
jquery与ajax获取特殊字符实例详解
2017/01/08 Javascript
JS利用cookies设置每隔24小时弹出框
2017/04/20 Javascript
Vue.js实现分页查询功能
2020/11/15 Javascript
vue 组件内获取actions的response方式
2019/11/08 Javascript
JavaScript实现捕获鼠标坐标
2020/04/12 Javascript
[01:14:41]DOTA2-DPC中国联赛定级赛 iG vs Magma BO3第一场 1月8日
2021/03/11 DOTA
在Gnumeric下使用Python脚本操作表格的教程
2015/04/14 Python
基于python爬虫数据处理(详解)
2017/06/10 Python
Python基于更相减损术实现求解最大公约数的方法
2018/04/04 Python
Python简单计算给定某一年的某一天是星期几示例
2018/06/27 Python
Python全局变量与global关键字常见错误解决方案
2020/10/05 Python
python实现马丁策略回测3000只股票的实例代码
2021/01/22 Python
浅析HTML5中header标签的用法
2016/06/24 HTML / CSS
JACK & JONES英国官方网站:欧洲领先的男装生产商
2017/09/27 全球购物
科技开发中心办公室主任岗位责任制
2014/02/10 职场文书
酒鬼酒广告词
2014/03/21 职场文书
工程售后服务承诺书
2014/05/21 职场文书
旅游节目策划方案
2014/05/26 职场文书
个人租房协议书
2014/11/28 职场文书
2015年度房地产工作总结
2015/04/09 职场文书
“爱眼护眼,提前预防近视”倡议书3篇
2019/10/30 职场文书
Prometheus 监控MySQL使用grafana展示
2021/08/30 MySQL
vue项目打包后路由错误的解决方法
2022/04/13 Vue.js