本篇内容介绍了“纯PHP代码怎么实现支付宝批量付款”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!
最近在做一个使用支付宝转账的项目,其中有需求把我难到了:批量支付成功后不知道怎么接收系统返回的通知,经过朋友帮忙,此功能实现,下面小编把具体代码整理分享给大家,供大家参考
废话不多说了,直接给大家贴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代码怎么实现支付宝批量付款”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注亿速云网站,小编将为大家输出更多高质量的实用文章!
亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。