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 相关文章推荐
一个简单的自动发送邮件系统(二)
Oct 09 PHP
php 图片上传类代码
Jul 17 PHP
php实现的Cookies操作类实例
Sep 24 PHP
PHP树的深度编历生成迷宫及A*自动寻路算法实例分析
Mar 10 PHP
php操作(删除,提取,增加)zip文件方法详解
Mar 12 PHP
PHP用mb_string函数库处理与windows相关中文字符及Win环境下开启PHP Mb_String方法
Nov 11 PHP
PHP递归实现层级树状展开
Apr 01 PHP
php array_reverse 以相反的顺序返回数组实例代码
Apr 11 PHP
PHP多维数组排序array详解
Nov 21 PHP
php实现支付宝当面付(扫码支付)功能
May 30 PHP
php strftime函数的详细用法
Jun 21 PHP
php实现QQ小程序发送模板消息功能
Sep 18 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 Smarty模板生成html文档的方法
2010/04/12 PHP
ThinkPHP自动填充实现无限级分类的方法
2014/08/22 PHP
PHP的switch判断语句的“高级”用法详解
2014/10/01 PHP
yii添删改查实例
2015/11/16 PHP
thinkphp3.2.0 setInc方法 源码全面解析
2018/01/29 PHP
Laravel配置全局公共函数的方法步骤
2019/05/09 PHP
Thinkphp5.0 框架Model模型简单用法分析
2019/10/11 PHP
jquery 表单取值常用代码
2009/12/22 Javascript
Javascript操作cookie的函数代码
2012/10/03 Javascript
javascript得到当前页的来路即前一页地址的方法
2014/02/18 Javascript
kindeditor修复会替换script内容的问题
2015/04/03 Javascript
javascript关于运动的各种问题经典总结
2015/04/27 Javascript
基于ajax实现文件上传并显示进度条
2015/08/03 Javascript
基于jQuery实现仿搜狐辩论投票动画代码(附源码下载)
2016/02/18 Javascript
JS在Chrome浏览器中showModalDialog函数返回值为undefined的解决方法
2016/08/03 Javascript
vue.js入门(3)——详解组件通信
2016/12/02 Javascript
nodejs实现发出蜂鸣声音(系统报警声)的方法
2017/01/18 NodeJs
在javaScript中检测数据类型的几种方式小结
2017/03/04 Javascript
js获取ip和地区
2017/03/10 Javascript
基于JavaScript实现的折半查找算法示例
2017/04/14 Javascript
Angular服务Request异步请求的实例讲解
2018/08/13 Javascript
浅谈Python类的__getitem__和__setitem__特殊方法
2016/12/25 Python
Python验证文件是否可读写代码分享
2017/12/11 Python
微信跳一跳辅助python代码实现
2018/01/05 Python
使用Python从零开始撸一个区块链
2018/03/14 Python
pycharm中使用anaconda部署python环境的方法步骤
2018/12/19 Python
python3常用的数据清洗方法(小结)
2019/10/31 Python
python Django框架实现web端分页呈现数据
2019/10/31 Python
K近邻法(KNN)相关知识总结以及如何用python实现
2021/01/28 Python
HTML5之WebGL 3D概述(上)—WebGL原生开发开启网页3D渲染新时代
2013/01/31 HTML / CSS
教你使用Canvas处理图片的方法
2017/11/28 HTML / CSS
Vans(范斯)新西兰官方网站:美国原创极限运动品牌
2020/09/19 全球购物
最新大学生创业计划书写作攻略
2014/04/02 职场文书
热血教师观后感
2015/06/10 职场文书
Python使用random模块实现掷骰子游戏的示例代码
2021/04/29 Python
25张裸眼3D图片,带你重温童年的记忆,感受3D的魅力
2022/02/06 杂记