支付宝支付 Deprecated:The each() function si deprecated

支付宝支付 Deprecated:The each() function si deprecated的问题怎么解决:
 
支付宝支付的时候遇到的问题,这种是因为php7+以上版本抛弃了each函数导致
 
原函数如下:
/**
* 除去数组中的空值和签名参数
* @param $para 签名参数组
* return 去掉空值与签名参数后的新签名参数组
*/
function paraFilter($para) {
$para_filter = array();
while (list ($key, $val) = each ($para)) {
if($key == "sign" || $key == "sign_type" || $val == "")continue;
else $para_filter[$key] = $para[$key];
}
return $para_filter;
}
修改成正确的如下:
 
function paraFilter($para) {
$para_filter = array();
foreach ($para as $key => $val) {
if($key == "sign" || $key == "sign_type" || $val == "")continue;
else $para_filter[$key] = $para[$key];
}
return $para_filter;
}

0 个评论

要回复文章请先登录注册