[乐意黎原创]Centos7.2主机PHP7抛Fatal error: Call to undefined function bcmath()的解决方法

乐意黎的ECS主机环境,Centos7.2 + PHP7

由于使用了bcdiv()函数,运行时总在抛错。

Fatal error: Call to undefined function bcmath() in /usr/loca/apache/htdocs/... on line 4

一查得知: PHP configure 时忘记加了--enable-bcmath 参数.

只能用下面方法来进行添加

Centos 7.2 下用PHPize给PHP动态添加扩展

接触Centos主机没多长时间, 总结这久,安装PHP时参考了别人的配置,编译PHP时没有开启若干扩展(很大的一个坑啊).

在实际使用中抛错了,再想添加扩展,但是因为安装PHP后又装了其它及设置了一些其它参数,不想卸载后再重装。

这下就需要用到PHPize来帮忙了。

比如此刻我想增加bcmath扩展的支持,这是一个支持大整数计算的扩展。

由于windows系统是自带而且内置,linux“本类函数仅在 PHP 编译时配置了--enable-bcmath时可用”(引号内是手册中的话)

我安装的为PHP7.0.12,

安装源文件路径在 /usr/local/src/PHP7.0.12

PHP的安装后路径 /usr/local/PHP/


进入源文件路径 :cd /usr/local/src/PHP7.0.12/ext/bcmath目录,

后执行输入/usr/local/PHP/bin/PHPize,然后再执行./configure命令即可.

#cd/usr/local/src/PHP7.0.12/ext/bcmath
#/usr/local/PHP/bin/PHPize
#./configure--with-PHP-config=/usr/local/PHP/bin/PHP-config

注意: 若报

  1. Cannotfindconfig.m4.
这个错的原因是,在执行PHPize时,一定要在需要扩展编译的PHP模块目录中进行/usr/local/PHP/bin/PHPize 才行。

回车后,如果没有报错,则make & make install ,然后它告诉你一个目录.

#make & make install

( 像网上说的: 把该目录下的bcmath.so拷贝到PHP.ini中的extension_dir指向的目录中, 我没有进行这一)

修改PHP.ini,在最后添加一句

extension=bcmath.so

ECS -> :wq 保存退出

重启Apache 服务

apachectl restart ,

再新建页面test.PHP,内容为: <?PHP PHPinfo(); ?>

测试成功.

表明bcmath扩展已经成功安装!

相关文章

Centos下搭建性能监控Spotlight
CentOS 6.3下Strongswan搭建IPSec VPN
在CentOS6.5上安装Skype与QQ
阿里云基于centos6.5主机VPN配置
CentOS 6.3下配置multipah
CentOS安装、配置APR和tomcat-native