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 相关文章推荐
PHP简单系统数据添加以及数据删除模块源文件下载
Jun 07 PHP
PHP获取表单所有复选框的值的方法
Aug 28 PHP
四种php中webservice实现的简单架构方法及实例
Feb 03 PHP
PHP中Session可能会引起并发问题
Jun 26 PHP
php基于Snoopy解析网页html的方法
Jul 09 PHP
学习php设计模式 php实现单例模式(singleton)
Dec 07 PHP
Yii2中DropDownList简单用法示例
Jul 18 PHP
CI框架(ajax分页,全选,反选,不选,批量删除)完整代码详解
Nov 01 PHP
CakePHP框架Model关联对象用法分析
Aug 04 PHP
PHP简单实现防止SQL注入的方法
Mar 13 PHP
PHP中cookie知识点学习
May 06 PHP
Laravel 队列使用的实现
Jan 08 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 文件上传系统手记
2009/10/26 PHP
PHP包含文件函数include、include_once、require、require_once区别总结
2014/04/05 PHP
php为字符串前后添加指定数量字符的方法
2015/05/04 PHP
PHP使用mysql与mysqli连接Mysql数据库用法示例
2016/07/07 PHP
yii2安装详细流程
2018/05/23 PHP
php使用gearman进行任务分发操作实例详解
2020/02/26 PHP
jQuery 性能优化手册 推荐
2010/02/23 Javascript
z-blog SyntaxHighlighter 长代码无法换行解决办法(jquery)
2014/11/16 Javascript
JavaScript实现文本框中默认显示背景图片在获得焦点后消失的方法
2015/07/01 Javascript
Javascrip实现文字跳动特效
2016/11/27 Javascript
jQuery实现背景滑动菜单
2016/12/02 Javascript
NodeJS配置HTTPS服务实例分享
2017/02/19 NodeJs
jQuery中绑定事件bind() on() live() one()的异同
2017/02/23 Javascript
bootstrap警告框示例代码分享
2017/05/17 Javascript
vue实现滑动切换效果(仅在手机模式下可用)
2020/06/29 Javascript
基于原生js实现判断元素是否有指定class名
2020/07/11 Javascript
[02:05]2014DOTA2国际邀请赛 BBC外卡赛赛后总结
2014/07/09 DOTA
python 多线程实现检测服务器在线情况
2015/11/25 Python
Python学习笔记整理3之输入输出、python eval函数
2015/12/14 Python
Python实现二维数组按照某行或列排序的方法【numpy lexsort】
2017/09/22 Python
Python设计模式之状态模式原理与用法详解
2019/01/15 Python
python安装numpy和pandas的方法步骤
2019/05/27 Python
python3用urllib抓取贴吧邮箱和QQ实例
2020/03/10 Python
python删除指定列或多列单个或多个内容实例
2020/06/28 Python
C语言中break与continue的区别
2012/07/12 面试题
自我评价范文点评
2013/12/04 职场文书
领导班子整改措施
2014/10/24 职场文书
国家助学贷款承诺书
2015/04/30 职场文书
大学生实习证明
2015/06/16 职场文书
2016年元旦主持词
2015/07/06 职场文书
干部培训简讯
2015/07/20 职场文书
你有一份《诚信考试承诺书》待领取
2019/11/13 职场文书
python 机器学习的标准化、归一化、正则化、离散化和白化
2021/04/16 Python
MySQL命令无法输入中文问题的解决方式
2021/08/30 MySQL
Javascript中Microtask和Macrotask鲜为人知的知识点
2022/04/02 Javascript
电脑只能进入安全模式无法正常启动的解决办法
2022/04/08 数码科技