最近、Alipay を使用して送金するプロジェクトに取り組んでいますが、難しい要件があります。一括支払いが成功した後にシステムから返される通知を受け取る方法がわかりません。以下に、編集者が具体的なコードを整理して共有します。これ以上のナンセンスはありません。具体的なコードは次のとおりです。
//批量付款异步通知处理 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 コードで Alipay 一括支払いを実現する機能を説明しています。
上記では、Alipay バッチ支払いを実装するための純粋な PHP コードを、関連する側面も含めて紹介しています。PHP チュートリアルに興味のある友人に役立つことを願っています。