源支付对接php签名算法
标签:
laravel
// 测试支付方法 public function toPay() { $postData = [ 'pid' =>1000, 'type'=>'alipay', 'out_trade_no' => time().Str::random(5), 'notify_url' =>'http://www.baidu.com', 'return_url' =>'http://www.baidu.com', 'name'=>'测试支付', 'money'=>'0.01', ]; $url = "https://域名/submit.php"; $postData['sign'] = $this->getSign($postData,'qfOyfmP5gMproCcHnMycALGCGa8PCAat'); $http = http_build_query($postData); // 模拟跳转 header("Location: $url?$http"); } // 源支付 签名算法 public function getSign($param,$key) { ksort($param); reset($param); $signstr = ''; foreach ($param as $k => $v) { if ($k != 'sign' && $k != 'sign_type' && $k != 's' && $k != '_input_charset' && $v != '') { $signstr .= $k . '=' . $v . '&'; } } $signstr = substr($signstr, 0, -1); $signstr .= $key; $sign = md5($signstr); return $sign; }