最近公司将一些项目转移了服务器,后来发现使用支付宝支付时发现出现错误, 错误如下:
The each() function is deprecated. This message will be suppressed on furthe
最后发现这是由于我们的新服务器的 php 版本安装的时 php7.2,由于 php7.2 版本废弃了 each 方法导致出现错误,解决方法为将 each 方法改成 foreach 方法,如下将:
while (list($key, $val) = each($para)) {}
改成:
foreach ($para as $key => $val) {}
修改完成支付又发现出现如下错误:
count(): Parameter must be an array or an object that implements Countable
这是由于在 php7.2 中 count 方法参数只支持数组导致的错误,修改如下将:
$arg = substr($arg,0,count($arg)-2);
改成:
$arg = substr($arg,0,strlen($arg)-1);
修改完成之后支付宝支付成功!!!