<?php
/*** Created by PhpStorm.* User: huxiansheng* Date: 2018-12-18* Time: 11:00*/
/*** PHP精确计算  主要用于货币的计算用* @param $n1 第一个数* @param $symbol 计算符号 + - * / %* @param $n2 第二个数* @param string $scale  精度 默认为小数点后两位* @return  string*/
class Price{public static function pricecalc($n1, $symbol, $n2, $scale = '2'){$res = "";switch ($symbol) {case "+"://加法$res = bcadd($n1, $n2, $scale);break;case "-"://减法$res = bcsub($n1, $n2, $scale);break;case "*"://乘法$res = bcmul($n1, $n2, $scale);break;case "/"://除法$res = bcdiv($n1, $n2, $scale);break;case "%"://求余、取模$res = bcmod($n1, $n2, $scale);break;default:$res = "";break;}return $res;}/*** 价格由元转分(用于微信支付单位转换)* @param $price 金额* @return int*/public static function priceyuantofen($price){$price = intval(self::pricecalc(100, "*",$price));return $price;}/*** 价格由分转元* @param $price 金额* @return float*/public static function pricefentoyuan($price){$price = self::pricecalc(self::priceformat($price),"/",100);return $price;}/*** 价格格式化** @param int $price* @return string    $price_format*/public static function priceformat($price){$price_format = number_format($price, 2, '.', '');return $price_format;}
}

php 处理高精度计算函数 金额计算类相关推荐

  1. php 浮点型float 强转int php金额计算 php元转分

    float 转int导致的误差太大,出现下面的问题. 浮点数的精度 浮点数的精度有限.尽管取决于系统,PHP 通常使用 IEEE 754 双精度格式,则由于取整而导致的最大相对误差为 1.11e-16 ...

  2. 先设计一个基本账户类,再通过继承基本账户类设计一个储蓄账户类,储蓄账户类中增加一个静态成员变量(年利率),并增加如下成员函数:(1)计算月利息月利息=存款金额x年利率+12(2)更改利率(静态方法)

    实验二:继承和派生程序设计(4学时)必做题: 先设计一个基本账户类,再通过继承基本账户类设计一个储蓄账户类,储蓄账户类中增加一个静态成员变量(年利率),并增加如下成员函数:(1)计算月利息 月利息=存 ...

  3. PHP金额计算高精度函数

    精度函数 结果是2222   不是0.8   因为存在精度问题,判定不相等,所以输出2222 PHP浮点数计算精度不够,以下是几个精度计算函数 bcadd - 加法 bccomp - 比较 bcdiv ...

  4. 【问题描述】定义一个Circle类,有数据成员radius(半径),成员函数getArea()计算圆的面积。构造一个Circle的对象进行测试(注:圆周率取值3.14)。

    [问题描述] 定义一个Circle类,有数据成员radius(半径),成员函数getArea()计算圆的面积.构造一个Circle的对象进行测试(注:圆周率取值3.14). [输入形式] 程序参考的输 ...

  5. 习题 12.5 编写一个程序,定义抽象基类Shape,由它派生出5个派生类:Cricle,Square, Rectangle, Trapezoid ,Triangle。用虚函数分别计算图形面积。

    习题 12.5 编写一个程序,定义抽象基类Shape,由它派生出5个派生类:Cricle,Square, Rectangle, Trapezoid ,Triangle.用虚函数分别计算图形面积,并求所 ...

  6. php手册数组函数,PHP - Manual手册 - 函数参考 - Array 数组函数 - array_diff计算数组的差集...

    PHP - Manual手册 - 函数参考 - Array 数组函数 - array_diff计算数组的差集 array_diff (PHP 4 >= 4.0.1, PHP 5) array_d ...

  7. 整数阶贝塞尔函数c语言,整数阶复宗量变形贝塞尔函数的计算.pdf

    整数阶复宗量变形贝塞尔函数的计算.pdf 焦作工学院学报(自然科学版),第 卷,第 期, 年 月 20 2 2001 3 ( ), , , JOurnaI Of JiaOzuO Institute O ...

  8. c++面试常用知识(sizeof计算类的大小,虚拟继承,重载,隐藏,覆盖)

    一. sizeof计算结构体 注:本机机器字长为64位 1.最普通的类和普通的继承 #include<iostream> using namespace std;class Parent{ ...

  9. C++学习笔记(10)运算符重载,友元函数,友元类

    c++允许我们为运算符定义专门的函数,这被称为运算符重载: 运算符可以简化字符串的操作,'+',以及使用关系运算符比较字符串,[ ]运算符访问向量中的元素: 例如: #include <iost ...

最新文章

  1. 决策树 随机森林 xgboost_决策树算法之随机森林
  2. 清华大学博士,就12年前抄袭一事公开道歉
  3. ewsa 字典_汉语字典小程序
  4. Java线程池的实现原理,你清楚么?
  5. 中国风海报灵感|几款各具特色的汉字活动海报设计
  6. wordpress安装后勿忘删除install.php
  7. 有道云笔记语音速记功能体验:让你在移动办公中解放双手
  8. Security+ 学习笔记36 嵌入式系统安全
  9. php从入门到精通分享,PHP从入门到精通学习路线图分享
  10. 看拉扎维《模拟CMOS集成电路设计》的一些总结和思考(八)——反馈
  11. CSDN Markdown 图片排版显示
  12. python聚类分析实现电商用户细分(基于RFM用户价值分析模型)
  13. 无家可归的iPhone(第2部分)
  14. Flutter解决在ios中弹出键盘没有小数点
  15. php 取消warning,php怎么关闭warning提示
  16. 多链跨链、高可用、高安全性的区块链应用如何落地? 金链盟大赛10强揭晓
  17. 1.4 高级数据库系统
  18. 必看!gitee上开源的商城源码
  19. 编译原理公式计算器C语言,编译原理课程设计-简单计算器实现.doc
  20. 设计的7条心理学原则和定律

热门文章

  1. 128*128RGB屏驱动
  2. Linux下PCI设备驱动程序开发 --- PCI驱动程序实现(三)
  3. EasyCVR快照跟视频流的关系是什么?快照生成具备何种机制?
  4. 解决升级MIUI 14后不能使用google pay
  5. 每日一文APP实现(网页json解析)
  6. phpstorm编辑器中没有tools菜单的解决办法
  7. VC++常用数据类型及其操作详解
  8. Python中用turtle库绘制爱心
  9. AIGC之LLaMA:《LLaMA: Open and Efficient Foundation Language Models》翻译与解读
  10. Datewhale数据分析组队学习第一次打卡