纯PHP代码实现支付宝批量付款
最近在做一个使用支付宝转账的项目,其中有需求把我难到了:批量支付成功后不知道怎么接收系统返回的通知,经过朋友帮忙,此功能实现,下面小编把具体代码整理分享给大家,供大家参考
废话不多说了,直接给大家贴php代码了,具体代码如下所示:
//批量付款异步通知处理 classNotify { public$notifyParams; //处理成功的信息 protected$success=[]; //处理失败的信息 protected$fail=[]; //批次号 protected$batchNo; publicfunctionsave() { if(!is_array($this->notifyParams)){ returnfalse; } $alipayNotify=newAlipayNotify(); $alipayNotify->notifyParams=$this->notifyParams; $alipayNotify->partner=Yii::$app->params['Alipay.appid']; $alipayNotify->key=Yii::$app->params['Alipay.appKey']; if(!$alipayNotify->verify()){ returnfalse; } $this->batchNo=$this->notifyParams['batch_no']; $this->parseResult(); //转账成功的 if(!empty($this->success)){ foreach($this->successas$item){ //......... } } //转账失败的 if(!empty($this->fail)){ foreach($this->failas$item){ //........ } } returntrue; } //解析结果 protectedfunctionparseResult() { if(!empty($this->notifyParams['success_details'])){ $suArray=explode('|',$this->notifyParams['success_details']); foreach($suArrayas$item){ $this->success[]=explode('^',$item); } } if(!empty($this->notifyParams['fail_detail'])){ $faArray=explode('|',$this->notifyParams['fail_detail']); foreach($faArrayas$item){ $this->fail[]=explode('^',$item); } } } } //用法 $model=newNotify(); $model->notifyParams=$_POST; if($model->save()){ return'success'; } return'fail';
以上内容给大家讲解了纯PHP代码实现支付宝批量付款的功能,希望对大家有所帮助。