PHP高精确度运算BC函数库实例详解


Posted in PHP onAugust 15, 2017

本文实例讲述了PHP高精确度运算BC函数库。分享给大家供大家参考,具体如下:

<?php
 /***************************************************************************************
 *php BC高精确度函数库
 *php bc math 包含了:相加,比较,相除,相减,求余,相乘,n次方,配置默认小数点数目,求平方
 *这些函数在涉及到有关金钱的计算时比较有用
 ***************************************************************************************
 *两个高精度数比较
 *工作中遇到一种情况,0.00 != 0
 *int bccomp ( string $left_operand , string $right_operand [, int $scale ] )
 *$left=$right 返回 0
 *$left<$right 返回 -1
 *$left>$right 返回 1
 *$scale 小数点位数
 ***************************************************************************************/
$a = 4.45;
$b = 5.54;
if(bccomp($a, $b, 2) == 0)
{
}
/***************************************************************************************
 *两个高精度数相加
 *string bcadd ( string $left_operand , string $right_operand [, int $scale ] )
 *$scale 返回的小数点个数
 ***************************************************************************************/
$a = 1.0321456;
$b = 0.0123456;
$c = bcadd($a, $b, 2);
//var_dump($c);
/***************************************************************************************
 *两个高精度数相减
 *sstring bcsub ( string $left_operand , string $right_operand [, int $scale ] )
 *$scale 返回的小数点个数
 ***************************************************************************************/
$a = 1.0321456;
$b = 3.0123456;
$c = bcsub($a, $b, 2);
var_dump($c);
/********************************************************
 *两个高精度数求余/取模
 *string bcmod ( string $left_operand , string $modulus )
 *******************************************************/
$a = 6;
$b = 4;
$c = bcmod($a, $b);
//var_dump($c);
/***************************************************************************************
 *两个高精度数相除
 *string bcdiv ( string $left_operand , string $right_operand [, int $scale ] )
 *$scale小数点位数默认为 0
 ***************************************************************************************/
 $a = 6;
 $b = 5;
 $c = bcdiv($a, $b, 3);
 //var_dump($c);
/***************************************************************************************
 *两个高精度数相乘
 *string bcmul ( string $left_operand , string $right_operand [, int $scale ] )
 *$scale小数点位数默认为 0
 ***************************************************************************************/
$a = 3.1415926;
$b = 2.4569874566;
$c = bcmul($a, $b, 6);
//var_dump($c);
/***************************************************************************************
 *两个高精度数的次方值
 *string bcpow ( string $left_operand , string $right_operand [, int $scale ] )
 *$scale小数点位数默认为 0
 ***************************************************************************************/
$a = 3.1415926;
$b = 2;
$c = bcpow($a, $b, 3);
//var_dump($c);
/**************************************************
 *求高精度数的平方根
 *string bcsqrt ( string $operand [, int $scale ] )
 *$scale小数点位数默认为 0
 ***************************************************/
$b = bcsqrt($a, 6);
//var_dump($b);
/******************************
 *设置bc函数的小数点位数
 *bool bcscale ( int $scale )
 *$scale小数点位数默认为 0
 ******************************/
//bcscale();
?>

PS:这里再为大家推荐几款计算工具供大家进一步参考借鉴:

在线一元函数(方程)求解计算工具:
http://tools.3water.com/jisuanqi/equ_jisuanqi

科学计算器在线使用_高级计算器在线计算:
http://tools.3water.com/jisuanqi/jsqkexue

在线计算器_标准计算器:
http://tools.3water.com/jisuanqi/jsq

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

PHP 相关文章推荐
php 动态执行带有参数的类方法
Apr 10 PHP
PHP获取文件后缀名的三个函数
Oct 15 PHP
PHP编码规范的深入探讨
Jun 06 PHP
修改ThinkPHP缓存为Memcache的方法
Jun 25 PHP
php实现图片缩略图的方法
Mar 29 PHP
PHP未登录自动跳转到登录页面
Dec 21 PHP
PHP处理Ajax请求与Ajax跨域问题
Feb 13 PHP
Docker搭建自己的PHP开发环境
Feb 24 PHP
PHP检查文件是否存在,不存在自动创建及读取文件内容操作示例
Jan 23 PHP
php设计模式之享元模式分析【星际争霸游戏案例】
Mar 23 PHP
PHP操作Redis常用命令的实例详解
Dec 23 PHP
PHP配置文件php.ini中打开错误报告的设置方法
Jan 09 PHP
PHP+原生态ajax实现的省市联动功能详解
Aug 15 #PHP
laravel学习笔记之模型事件的几种用法示例
Aug 15 #PHP
PHP实现的回溯算法示例
Aug 15 #PHP
php简单中奖算法(实例)
Aug 15 #PHP
PHP实现的随机红包算法示例
Aug 14 #PHP
详解PHP中的 input属性(隐藏 只读 限制)
Aug 14 #PHP
IOS 开发之NSDictionary转换成JSON字符串
Aug 14 #PHP
You might like
解决PhpMyAdmin中导入2M以上大文件限制的方法分享
2014/06/06 PHP
PHP 超级全局变量相关总结
2020/06/30 PHP
Yii使用DbTarget实现日志功能的示例代码
2020/07/21 PHP
HTML页面如何象ASP一样接受参数
2007/02/07 Javascript
JS中获取数据库中的值的方法
2013/07/14 Javascript
Angular.js自定义指令学习笔记实例
2017/02/24 Javascript
Vue制作Todo List网页
2017/04/26 Javascript
解决jquery有正确返回值但不执行success函数的问题
2018/08/20 jQuery
Postman的下载及安装教程详解
2018/10/16 Javascript
vue发送websocket请求和http post请求的实例代码
2019/07/11 Javascript
layui table 列宽百分比显示的实现方法
2019/09/28 Javascript
[52:06]完美世界DOTA2联赛决赛日 Inki vs LBZS 第一场 11.08
2020/11/10 DOTA
Python json模块使用实例
2015/04/11 Python
Python多线程threading和multiprocessing模块实例解析
2018/01/29 Python
numpy判断数值类型、过滤出数值型数据的方法
2018/06/09 Python
Python图片转换成矩阵,矩阵数据转换成图片的实例
2018/07/02 Python
python 3.6.2 安装配置方法图文教程
2018/09/18 Python
详解Python连接MySQL数据库的多种方式
2019/04/16 Python
Python数据可视化:幂律分布实例详解
2019/12/07 Python
python__new__内置静态方法使用解析
2020/01/07 Python
wxpython自定义下拉列表框过程图解
2020/02/14 Python
CSS3制作炫酷的下拉菜单及弹起式选单的实例分享
2016/05/17 HTML / CSS
HTML5 在canvas中绘制文本附效果图
2014/06/23 HTML / CSS
英国家庭珠宝商:T. H. Baker
2018/02/08 全球购物
德国排名第一的主题公园门票网站:Attraction Tickets Direct
2019/09/09 全球购物
库房主管岗位职责
2013/12/31 职场文书
护士岗位职责
2014/02/16 职场文书
语文教学随笔感言
2014/02/18 职场文书
2014年幼儿园植树节活动方案
2014/03/02 职场文书
西湖英语导游词
2015/02/06 职场文书
2015法院个人工作总结范文
2015/05/25 职场文书
高中生军训感言
2015/08/01 职场文书
python爬虫之爬取笔趣阁小说
2021/04/22 Python
基于PyTorch实现一个简单的CNN图像分类器
2021/05/29 Python
一篇文章弄懂Python中的内建函数
2021/08/07 Python
python库sklearn常用操作
2021/08/23 Python