php教程

超轻量级php框架startmvc

纯PHP代码实现支付宝批量付款

更新时间:2020-03-07 05:42:23 作者:startmvc
最近在做一个使用支付宝转账的项目,其中有需求把我难到了:批量支付成功后不知道怎么

最近在做一个使用支付宝转账的项目,其中有需求把我难到了:批量支付成功后不知道怎么接收系统返回的通知,经过朋友帮忙,此功能实现,下面小编把具体代码整理分享给大家,供大家参考

废话不多说了,直接给大家贴php代码了,具体代码如下所示:


//批量付款异步通知处理
class Notify
{
 public $notifyParams;
 //处理成功的信息
 protected $success = [];
 //处理失败的信息
 protected $fail = [];
 //批次号
 protected $batchNo;
 public function save()
 {
 if (!is_array($this->notifyParams)) {
 return false;
 }
 $alipayNotify = new AlipayNotify();
 $alipayNotify->notifyParams = $this->notifyParams;
 $alipayNotify->partner = Yii::$app->params['Alipay.appid'];
 $alipayNotify->key = Yii::$app->params['Alipay.appKey'];
 if (!$alipayNotify->verify()) {
 return false;
 }
 $this->batchNo = $this->notifyParams['batch_no'];
 $this->parseResult();
 //转账成功的
 if (!empty($this->success)) {
 foreach ($this->success as $item) {
 //.........
 }
 }
 //转账失败的
 if (!empty($this->fail)) {
 foreach ($this->fail as $item) {
 //........
 }
 }
 return true;
 }
 //解析结果
 protected function parseResult()
 {
 if (!empty($this->notifyParams['success_details'])) {
 $suArray = explode('|', $this->notifyParams['success_details']);
 foreach ($suArray as $item) {
 $this->success[] = explode('^', $item);
 }
 }
 if (!empty($this->notifyParams['fail_detail'])) {
 $faArray = explode('|', $this->notifyParams['fail_detail']);
 foreach ($faArray as $item) {
 $this->fail[] = explode('^', $item);
 }
 }
 }
}
//用法
$model = new Notify();
$model->notifyParams = $_POST;
if ($model->save()) {
 return 'success';
}
return 'fail';

以上内容给大家讲解了纯PHP代码实现支付宝批量付款的功能,希望对大家有所帮助。

php支付宝批量付款 手机支付宝批量付款 支付宝怎么批量付款