在一台处理网络支付的服务器迁移的时候,发现不能支付。
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() 来设置全局默认的小数位数,具体用法如下:
<?php
echo bcmul('1.34747474747', '35', 3); // 47.161
echo bcmul('2', '4'); // 8
?>解决方法使用如下命令:yum install php-bcmath 就安装好了,如果出现下面这种情况:
立即学习“PHP免费学习笔记(深入)”;
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 //数学库配置选项
本文地址:
转载随意,但请附上文章地址:-)
PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!
C++高性能并发应用_C++如何开发性能关键应用
Java AI集成Deep Java Library_Java怎么集成AI模型部署
Golang后端API开发_Golang如何高效开发后端和API
Python异步并发改进_Python异步编程有哪些新改进
C++系统编程内存管理_C++系统编程怎么与Rust竞争内存安全
Java GraalVM原生镜像构建_Java怎么用GraalVM构建高效原生镜像
Python FastAPI异步API开发_Python怎么用FastAPI构建异步API
C++现代C++20/23/26特性_现代C++有哪些新标准特性如modules和coroutines
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号