PHP中的精确计算bcadd,bcsub,bcmul,bcdiv 及 扩展安装
<?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 ?>
今天正好要用到bcadd()函数,结果报错,百度下原因是没有安装bcmath扩展。
那就安装呗,搜了一下,我是yum安装的php7.2,扩展也可以yum来安装
1.键入命令 (72W就是php版本,不加有一定的几率报错) yum install php72w-bcmath 回车; 2.ok,安装完毕,重启服务器 Nginx 或者 Apache
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 记一次.NET内存居高不下排查解决与启示