纯PHP代码实现支付宝批量付款
更新时间:2015年12月24日 10:51:31 投稿:mrr
最近在做一个使用支付宝转账的项目,其中有需求把我难到了:批量支付成功后不知道怎么接收系统返回的通知,经过朋友帮忙,此功能实现,下面小编把具体代码整理分享给大家,供大家参考
最近在做一个使用支付宝转账的项目,其中有需求把我难到了:批量支付成功后不知道怎么接收系统返回的通知,经过朋友帮忙,此功能实现,下面小编把具体代码整理分享给大家,供大家参考
废话不多说了,直接给大家贴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代码实现支付宝批量付款的功能,希望对大家有所帮助。
相关文章
Laravel解决nesting level错误和隐藏index.php的问题
今天小编就为大家分享一篇Laravel解决nesting level错误和隐藏index.php的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧2019-10-10PHP 面向对象程序设计(oop)学习笔记 (四) - 异常处理类Exception
异常经常被用来处理一些在程序正常执行中遇到的各种类型的错误。比如做数据库链接时,你就要处理数据库连接失败的情况。使用异常可以提高我们程序的容错特性,从而使我们的应用程序更加的稳定和健壮。2014-06-06详解PHP中instanceof关键字及instanceof关键字有什么作用
这篇文章主要介绍了PHP中instanceof关键字详解及instanceof关键字有什么作用的相关资料,需要的朋友可以参考下2015-11-11
最新评论