当前位置:首页 > PHP教程 > php高级应用 > 列表

PHP Fatal error: Call to undefined function bcmul()

发布:smiling 来源: PHP粉丝网  添加日期:2013-12-07 22:04:50 浏览: 评论:0 

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

1.PHP版本为5.3.3

2.系统为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() 来设置全局默认的小数位数,具体用法如下:

  1. echo bcmul('1.34747474747''35', 3); // 47.161  
  2. echo bcmul('2''4'); // 8  
  3. ?> 

解决方法使用如下命令: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中的选项:

  1. [bcmath] ; Number of decimal digits for all bcmath functions. ; http://www.php.net/manual/en/bc.configuration.php#ini.bcmath.scale bcmath.scale = 0  
  2. BC //数学库配置选项 

Tags: Call to undefined function

分享到: