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 模拟登陆MSN并获得用户信息
May 16 PHP
PHP详解ASCII码对照表与字符转换
Dec 05 PHP
为PHP安装imagick时出现Cannot locate header file MagickWand.h错误的解决方法
Nov 03 PHP
php+mysql实现简单的增删改查功能
Jul 13 PHP
zen cart实现订单中增加paypal中预留电话的方法
Jul 12 PHP
PHP操作MySQL中BLOB字段的方法示例【存储文本与图片】
Sep 15 PHP
PHP实现的mysql操作类【MySQL与MySQLi方式】
Oct 07 PHP
PHP 中魔术常量的实例详解
Oct 26 PHP
PHP手机短信验证码实现流程详解
May 17 PHP
php压缩文件夹最新版
Jul 18 PHP
laravel5.6中的外键约束示例
Oct 23 PHP
php设计模式之模板模式实例分析【星际争霸游戏案例】
Mar 24 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
drupal 代码实现URL重写
2011/05/04 PHP
基于Zookeeper的使用详解
2013/05/02 PHP
php socket客户端及服务器端应用实例
2014/07/04 PHP
PHP实现懒加载的方法
2015/03/07 PHP
PHP随机生成唯一HASH值自定义函数
2015/04/20 PHP
php 常用的系统函数
2017/02/07 PHP
php字符串过滤strip_tags()函数用法实例分析
2019/06/24 PHP
jQuery EasyUI API 中文文档 搜索框
2011/09/29 Javascript
从数据结构的角度分析 for each in 比 for in 快的多
2013/07/07 Javascript
图片上传插件jquery.uploadify详解
2013/11/15 Javascript
JQuery限制复选框checkbox可选中个数的方法
2015/04/20 Javascript
JavaScript模拟可展开、拖动与关闭的聊天窗口实例
2015/05/12 Javascript
JS中常用的输出方式(五种)
2016/06/12 Javascript
jQuery Mobile漏洞会有跨站脚本攻击风险
2017/02/12 Javascript
PHP实现本地图片上传和验证功能
2017/02/27 Javascript
JavaScript用二分法查找数据的实例代码
2017/06/17 Javascript
详解vue axios中文文档
2017/09/12 Javascript
关于JS模块化的知识点分享
2019/10/16 Javascript
Vue组件通信中非父子组件传值知识点总结
2019/12/05 Javascript
Element中Slider滑块的具体使用
2020/07/29 Javascript
使用Python操作excel文件的实例代码
2017/10/15 Python
Python使用pip安装pySerial串口通讯模块
2018/04/20 Python
Python从文件中读取数据的方法讲解
2019/02/14 Python
一文了解Python并发编程的工程实现方法
2019/05/31 Python
Python基于Opencv来快速实现人脸识别过程详解(完整版)
2019/07/11 Python
python模块导入的方法
2019/10/24 Python
Python 利用邮件系统完成远程控制电脑的实现(关机、重启等)
2019/11/19 Python
python实现从ftp服务器下载文件
2020/03/03 Python
越南母婴用品购物网站:Kids Plaza
2020/04/09 全球购物
应届生如何写自荐信
2014/01/05 职场文书
让生命充满爱演讲稿
2014/05/10 职场文书
出差报告范文
2014/11/06 职场文书
大学生党性分析材料
2014/12/19 职场文书
信访工作个人总结
2015/03/03 职场文书
2016年敬老月活动总结
2016/04/05 职场文书
Pygame Event事件模块的详细示例
2021/11/17 Python