加入收藏 | 设为首页 | 会员中心 | 我要投稿 湖南网 (https://www.hunanwang.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程 > 正文

php支付宝系列之电脑网站支付

发布时间:2021-05-24 03:24:17 所属栏目:编程 来源:网络整理
导读:网上的许多PHP付出宝付出接入教程都颇为伟大,且必要设置和引入较多的文件,本人通过清算后给出一个单文件版的,但愿可以给列位想接入付出宝付出的带来些许辅佐和小心意义。 一个PHP文件搞定付出宝系列 一个PHP文件搞定微信付出系列 情形依靠 PHP5.0以上,且
副问题[/!--empirenews.page--]

网上的许多PHP付出宝付出接入教程都颇为伟大,且必要设置和引入较多的文件,本人通过清算后给出一个单文件版的,但愿可以给列位想接入付出宝付出的带来些许辅佐和小心意义。

一个PHP文件搞定付出宝系列

一个PHP文件搞定微信付出系列

情形依靠

PHP5.0以上,且必要开启CURL处事、SSL处事。

留意事项

1.文件开头的设置信息必需完美 2.商户私钥需填写对应署名算法范例的私钥,怎样天生密钥参考: 2.1 天生RSA密钥 2.2 建设应用

代码

密钥打点->开放平台密钥,填写添加了电脑网站付出的应用的APPID $returnUrl = 'http://www.xxx.com/alipay/return.php'; //付款乐成后的同步回调地点 $notifyUrl = 'http://www.xxx.com/alipay/notify.php'; //付款乐成后的异步回调地点 $outTradeNo = uniqid(); //你本身的商品订单号 $payAmount = 0.01; //付款金额,单元:元 $orderName = '付出测试'; //订单问题 $signType = 'RSA2'; //署名算法范例,支持RSA2和RSA,保举行使RSA2 //商户私钥,填写对应署名算法范例的私钥,怎样天生密钥参考:https://docs.open.alipay.com/291/105971和https://docs.open.alipay.com/200/105310 $saPrivateKey='MIIEpAIBAAKCAQEA1MV+OY6MvGfXPM0MkpjT+FdzGmPOvVmX2wF3gjwQpeHBEUP9jLXhVS32fZ1iXI1e7WUGQ5tvXn28P8190kpOn/c/G5t2CAksUvemvF7uJN/N3Z1HFMdt3omvCd14K05lgcFYz7Z4c+A7ZJF5bPCB6oshjjUmbCY3hibuWzX/1j8AgsoD9lLyxoFqxLj98k5ZrYIhk900gMQs/WJ3A1FC09Dln9fuhBUyjtPHaml+4w+sdkdzxPktxdFrMcI7M7rNEwg25XtST5Z49oFpE84AlXM7+oC9jYvIpTGE00WomsgtakN039ucT/59Bup6pLkO08Rv85UXbqzGTcYAhNHLfQIDAQABAoIBAQCbuP258s+j8KgB8ty5yiqRPoeaj+O2h4Txn7A02/sfPQvNtCI0wsTpT5twsihULo+EVYTxJCitUn7df2sP5pyGzTEd5njLRtNu4Zvhj+Thjf8grERiu9b4oXI/WRzjLRxzi+uREi40OK+fWi0xgxDCdROY/eNiEdJfV8zpaqsUxG7VdwZIJQ/8d3Mi31OWv30kr9jfEd15DBInGJgSqR+qwrAB4pBSMcW8hL6PYlzoPi1ygceFjRrnbefG40zt0OUPSexQIgAmFvGqxTl5xo3dFEziGHdfWYsBKZ2M8ubAe+R6LcndxI+o2Hw4TNcC1tDeNMtjw7+h9S5aef5A8uWBAoGBAPxCLWPhUHCYlIXUz0D1SoolZs9WK7Kz1YSWnzqrpegN+foS5/ji93YylGE+KL31TwbnGQLAwknwMX3qTzmkvTovmy8jevXBsCSEFm81q0wG/35e1SKkTXL66RqB2y0xFLdcF3f9s8ZiEclqkYwNSHh0nqzREfIxMMAsj+3n2vHdAoGBANftYkZYrbs4iI/ZcjmBYguYikNfNmrD+Ta6ckOGZqsHfwXJCAz1rF4/XCqVAc9nxuzJR/72qkn9z07uH6qSZCqlZDRkiiKaK2UVqFDB+0abMk/TGHXuMmdvMkyj2jEZxG2rkg0kmg4qYkkg/5tGG1On/0GeZNVPu8JpsFr1pDYhAoGBANr8pCTKC6fDfWP1C3qrtmrY7zhc6RB4d4pjq5UmP5+EypaiZQi2F/dfD1qfuIS3eURXyGmQZtoDDyPtDZvP/ImPnFs+pNbFryD0HfmrEKquhIvyzXoGQknnsgbV5iy3KCTJaII9FxzINAKzZei7+0a+jqUd1kN3Gogp50Sze2ltAoGARaM5Xpaa8RZ6dGocfI9Nn4/Ch5fdZPFvHkdjMoPV+LKiNKtw/Tz+KiclAlasDsfZT+RaY9AJe3NvuHTzoX807swIVR1Xr3EpLaCed+0XrN3AjB34dZAskU87WZw+cjdtMjFzGOoFBSyGJi+OP/WMOp6jo/YBbwoX88tCJROzsgECgYAT8pHHIyPt5Y/5pDb8EDvD3XNES1fBkfZffSoAodsrkeoKgrsKl+9M3rcGX+S9dscyoH0ur3BFTMHtIOOhC5qytt+BhMHIP5mAs4di4u/joQCWQbUyrUggVK5it+6BFgAT+jeB7zTAUtgGpTVFq3kLbV0NZ+XQyEHVlnoJnHYpQg=='; $aliPay = new AlipayService($appid,$returnUrl,$notifyUrl,$saPrivateKey); $sHtml = $aliPay->doPay($payAmount,$outTradeNo,$orderName,$notifyUrl); echo $sHtml;

class AlipayService
{
protected $appId;
protected $returnUrl;
protected $notifyUrl;
protected $charset;
//私钥值
protected $rsaPrivateKey;

public function __construct($appid,$saPrivateKey)
{
$this->appId = $appid;
$this->returnUrl = $returnUrl;
$this->notifyUrl = $notifyUrl;
$this->charset = 'utf8';
$this->rsaPrivateKey=$saPrivateKey;
}
/**

  • 提倡订单
  • @param float $totalFee 收款总用度 单元元
  • @param string $outTradeNo 独一的订单号
  • @param string $orderName 订单名称
  • @param string $notifyUrl 付出功效关照url 不要有问号
  • @param string $timestamp 订单提倡时刻
  • @return array
    */
    public function doPay($totalFee,$notifyUrl)
    {
    //哀求参数
    $requestConfigs = array(
    'out_trade_no'=>$outTradeNo,'product_code'=>'FAST_INSTANT_TRADE_PAY','total_amount'=>$totalFee,//单元 元
    'subject'=>$orderName,//订单问题
    );
    $commonConfigs = array(
    //民众参数
    'app_id' => $this->appId,'method' => 'alipay.trade.page.pay',//接口名称
    'format' => 'JSON','return_url' => $returnUrl,'charset'=>$this->charset,'sign_type'=>'RSA2','timestamp'=>date('Y-m-d H:i:s'),'version'=>'1.0','notify_url' => $notifyUrl,'biz_content'=>json_encode($requestConfigs),);
    $commonConfigs["sign"] = $this->generateSign($commonConfigs,$commonConfigs['sign_type']);
    return $this->buildRequestForm($commonConfigs);
    }

/**

  • 成立哀求,以表单HTML情势结构(默认)
  • @param $para_temp 哀求参数数组
  • @return 提交表单HTML文本
    */
    protected function buildRequestForm($para_temp) {
$sHtml = "<form id='alipaysubmit' name='alipaysubmit' action='https://openapi.alipay.com/gateway.do?charset=".$this->charset."' method='POST'>";
while (list ($key,$val) = each ($para_temp)) {
  if (false === $this->checkEmpty($val)) {
    $val = str_replace("'","&apos;",$val);
    $sHtml.= "<input type='hidden' name='".$key."' value='".$val."'/>";
  }
}
//submit按钮控件请不要含有name属性
$sHtml = $sHtml."<input type='submit' value='ok' style='display:none;''></form>";
$sHtml = $sHtml."<script>document.forms['alipaysubmit'].submit();</script>";
return $sHtml;

}

public function generateSign($params,$signType = "RSA") {
return $this->sign($this->getSignContent($params),$signType);
}

(编辑:湖南网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读