我们都知道,大多数编程语言对于浮点型数据格式遵循 IEEE 754 标准,PHP也不例外,这就会导致在使用浮点数运算的过程中会有精度丢失的问题。PHP提供了BCMath库来支持更加精确的计算。但是我的PHP在编译时并没有安装BCMath库,如果需要安装在编译安装时指定--enable-bcmath即可。如果在编译安装时漏掉了,我们也可以对BCMath库单独进行安装,下面提供单独安装的步骤:

  1. 进入PHP源码包目录下的ext/bcmatch目录(我的目录是/usr/src/php-7.2.12/ext/bcmath)。

  2. 执行phpize命令,phpize命令在PHP安装目录的bin目录下(我的目录是/usr/local/php-7.2.12/bin/phpize)。

    # 如果已经把PHP的bin目录添加到系统环境变量,则直接在bcmath目录下执行phpize即可
    phpize #否则,要在bcmath目录下指定phpize命令的路径
    /usr/local/php-7.2.12/bin/phpize
  3. 预编译

    ./configure --with-php-config=/usr/local/php-7.2.12/bin/php-config
  4. 编译&&安装

    make && make install
  5. 在php.ini中添加该扩展(我的php.ini在/usr/local/php/lib目录下)

    extension=bcmath.so

  6. 重启PHP服务即可。

PHP安装BCMath扩展的更多相关文章

  1. 安装bcmath 扩展

    1.在php源码包中,默认就包含bcmath扩展的安装文件,只需手动安装一下即可 cd /root/build2/php-/ext/bcmath // 进入PHP的源码包目录中的bcmatch扩展目录 ...

  2. Ubuntu安装bcmath扩展

    sudo apt-get install php-bcmath

  3. centos安装PHP扩展(bcmath)

    Centos下搭完Mysql+Apache+PHP后,发现有些网页打开是空白的.将php.ini里面的参数 error_reporting = E_ALL,display_errors = On,di ...

  4. pecl 轻松安装php扩展

    PECL 的全称是 The PHP Extension Community Library ,是一个开放的并通过 PEAR(PHP Extension and Application Reposito ...

  5. 编译安装PHP7并安装Redis扩展Swoole扩展

    编译安装PHP7并安装Redis扩展Swoole扩展 在编译php7的机器上已经有编译安装过php5.3以上的版本,从而依赖库都有了 本php7是编译成fpm-php 使用的, 如果是apache那么 ...

  6. 使用phpize安装php扩展

    环境: CentOs 6.3 php 7 nginx 举例: 安装ssh2扩展 1.登陆http://pecl.php.net,搜索ssh2,如下图所示,注意版本的选择要根据php的版本来 2.下载s ...

  7. centos下安装php扩展php-memcached

    说来坎坷,为了安装这个php的扩展php-memcached,连操作系统都换了,从centos5.5升级到了centos6.8!! centos5.5中在安装php扩展php-memcached的依赖 ...

  8. 如何正确使用 Composer 安装 Laravel 扩展包

    我们经常要往现有的项目中添加扩展包,有时候因为文档的错误引导,如下图来自 这个文档 的: composer update 这个命令在我们现在的逻辑中,可能会对项目造成巨大伤害. 因为 composer ...

  9. win10 64位安装memcache扩展和开启redis扩展

    前面有关于win10下搭建wamp环境的介绍,在此不在赘述,php操作memcache有memcache库和memcached库,其中memcache是php内置的扩展库,支持面向对象和面向过程两种操 ...

随机推荐

  1. Linux驱动之USB鼠标驱动编写

    本篇博客分以下几部分讲解 1.介绍USB四大描述 2.介绍USB鼠标驱动程序功能及框架 3.介绍程序用到的结构体 4.介绍程序用到的函数 5.编写程序 6.测试程序 1.介绍USB四大描述符 USB设 ...

  2. CentOS7 Failed to start LSB: Bring up/down解决方法

    刚刚装好的虚拟机突然不能上网了,报错很诡异,具体报错如下: /etc/init.d/network restart Restarting network (via systemctl):  Job f ...

  3. applium安装过程中遇到的问题及解决方法。

    1.安装appium server 之后, cmd输入appium-doctor,运行时提示'node'不是内部或外部的命令   一.提示'node'不是内部或外部命令,先按照下面步骤操作: 1.设置 ...

  4. github分支规范

    转自:https://www.cnblogs.com/xuld 一.目的 我们制定分支规范,意在实现以下目标: 减少沟通成本:开发者可以很清晰地知道需要修改的代码位于哪个分支. 减少 bug 隐患:避 ...

  5. python爬虫工具集合

    python爬虫工具集合 大家一起来整理吧!强烈建议PR.这是初稿,总是有很多问题,而且考虑不全面,希望大家支持! 源文件 主要针对python3 常用库 urllib Urllib是python提供 ...

  6. [Hadoop]Hadoop章3 NameNode的ZKFC机制

    基本概念 首先我们要明确ZKFC 是什么,有什么作用: zkfc是什么? ZooKeeperFailoverController 它是什么?是Hadoop中通过ZK实现FC功能的一个实用工具. 主要作 ...

  7. 【机器学习】K均值算法(I)

    K均值算法是一类非监督学习类,其可以通过观察样本的离散性来对样本进行分类. 例如,在对如下图所示的样本中进行聚类,则执行如下步骤 1:随机选取3个点作为聚类中心. 2:簇分配:遍历所有样本然后依据每个 ...

  8. jquery选择器基础知识(复制w3c)

    jQuery 元素选择器 jQuery 使用 CSS 选择器来选取 HTML 元素. $("p") 选取 <p> 元素. $("p.intro") ...

  9. 【此处有干货~】jmeter+ant+jenkins持续集成配置及过程中问题解决思路

    本人是一枚工作近三年的小测试,大学正好专业为软件测试,在工作中用到最多的是功能测试.接口测试.压力测试.偶尔会涉及到性能测试......(小白,很多观念技术跟大佬差距太大,勿喷) 在接口测试过程当中, ...

  10. jQuery子页面获取父页面元素并绑定事件

    父页面HTML文件: <ul id="faul"> <li class="sonli">子页面列表1</li> <li ...