$money, 'outOrderNum' => $order, 'mchNum' => $this->mchid, 'timestamp' => date('YmdHis'), 'account' => $accountno, 'accountName' => $accountname, 'bankName' => $bankname, 'notifyUrl' => getenv('API_HOST') . '/api/issue.html', ]; $arr['sign'] = $this->sign($arr); $rst = Http::post('http://sepaydf.tr16688.com/dfApi/order', $arr)->array(); // $rst = []; Log::channel('issue')->info('调下发', [ '请求数据' => $arr, '回调数据' => $rst ]); if (Arr::get($rst, 'code') == 0) { throw new \Exception(Arr::get($rst, 'message', '请求失败')); } } catch (\Throwable $exception) { throw new \Exception($exception->getMessage()); } return $rst; } /** 签名 * @param $array * @return void */ public function sign($array = []) { ksort($array); //ASCII码排序 $md5str = ""; $arr = []; foreach ($array as $key => $val) { $arr[] = $key . "=" . $val; // $md5str = $md5str . $key . "=" . $val . "&"; } $sign = md5(implode('&', $arr) . $this->mch_key); return $sign; } }