php bcmath 5.3.3 47,解决PHP Fatal error: Call to undefined function bcmul()

在一台处理网络支付的服务器迁移的时候,发现不能支付。

PHP版本为5.3.3

系统为Red Hat 4.1.2-54

查看apache的错误日志,发现是加密文件中一个函数bcmul()报错:

PHP Fatal error:  Call to undefined function bcmul() in /php_rsa.php on line xxx

这个函数是PHP数学扩展中的一个。使用 bcscale()来设置全局默认的小数位数,具体用法如下:

string bcmul ( string $left_operand , string $right_operand [, int $scale ] )

echo bcmul('1.34747474747', '35', 3); // 47.161

echo bcmul('2', '4'); // 8

?>

解决:

使用如下命令:

yum install php-bcmath

就安装好了。

如果出现下面这种情况:

Loaded plugins: fastestmirror

Loading mirror speeds from cached hostfile

* base: mirrors.yun-idc.com

* extras: mirrors.yun-idc.com

* rpmforge: ftp.riken.jp

* updates: mirrors.yun-idc.com

Setting up Install Process

Resolving Dependencies

--> Running transaction check

---> Package php-bcmath.x86_64 0:5.1.6-40.el5_9 set to be updated

--> Processing Dependency: php-common = 5.1.6-40.el5_9 for package: php-bcmath

--> Running transaction check

---> Package php-common.x86_64 0:5.1.6-40.el5_9 set to be updated

--> Processing Conflict: php53-common conflicts php-common

--> Finished Dependency Resolution

php53-common-5.3.3-13.el5_9.1.x86_64 from installed has depsolving problems

--> php53-common conflicts with php-common

Error: php53-common conflicts with php-common

You could try using --skip-broken to work around the problem

You could try running: package-cleanup --problems

package-cleanup --dupes

rpm -Va --nofiles --nodigest

就需要使用yum update 之后再yum install php53-bcmath就好了

此函数在php.ini中的选项:

[bcmath]

; Number of decimal digits for all bcmath functions.

; http://www.php.net/manual/en/bc.configuration.php#ini.bcmath.scale

bcmath.scale = 0

BC 数学库配置选项

名字

默认

可修改范围

更新日志

“0”

PHP_INI_ALL

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值