使用Laravel怎么实现支付宝支付

发布时间:2021-06-23 16:59:52 作者:Leah
来源:亿速云 阅读:242

使用Laravel怎么实现支付宝支付,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。

/* 
  支付 
*/ 
 public function pay() 
 { 
   header("content-type:text/html;charset=utf8"); 
   //echo 1;die; 
   // ******************************************************配置 start************************************************************************************************************************* 
   //↓↓↓↓↓↓↓↓↓↓请在这里配置您的基本信息↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓ 
   //合作身份者id,以2088开头的16位纯数字 
   $alipay_config['partner']   = '合作身份者id'; 
   //收款支付宝账号 
   $alipay_config['seller_email'] = ''; 
   //安全检验码,以数字和字母组成的32位字符 
   $alipay_config['key']     = 'y8z1t3vey08bgkzlw78u9cbc4pizy2sj'; 
   //↑↑↑↑↑↑↑↑↑↑请在这里配置您的基本信息↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑ 
   //签名方式 不需修改 
   $alipay_config['sign_type']  = strtoupper('MD5'); 
   //字符编码格式 目前支持 gbk 或 utf-8 
   //$alipay_config['input_charset']= strtolower('utf-8'); 
   //ca证书路径地址,用于curl中ssl校验 
   //请保证cacert.pem文件在当前文件夹目录中 
   $alipay_config['cacert']  = getcwd().'\\cacert.pem'; 
   //访问模式,根据自己的服务器是否支持ssl访问,若支持请选择https;若不支持请选择http 
   $alipay_config['transport']  = 'http'; 
   // ******************************************************配置 end************************************************************************************************************************* 
 
   // ******************************************************请求参数拼接 start************************************************************************************************************************* 
   $parameter = array( 
     "service" => "create_direct_pay_by_user", 
     "partner" => $alipay_config['partner'], // 合作身份者id 
     "seller_email" => $alipay_config['seller_email'], // 收款支付宝账号 
     "payment_type" => '1', // 支付类型 
     "notify_url"  => "http://bw.com133.com/notify_url.php", // 服务器异步通知页面路径 
     "return_url"  => "支付后跳转路径", // 页面跳转同步通知页面路径 
     "out_trade_no" => "订单号", // 商户网站订单系统中唯一订单号 
     "subject" => "", // 订单名称 
     "total_fee"  => "0.01", // 付款金额 
     "body" => "", // 订单描述 可选 
     "show_url" => "", // 商品展示地址 可选 
     "anti_phishing_key"  => "", // 防钓鱼时间戳 若要使用请调用类文件submit中的query_timestamp函数 
     "exter_invoke_ip" => "", // 客户端的IP地址 
     "_input_charset"  => 'utf-8', // 字符编码格式 
   ); 
   // 去除值为空的参数 
   foreach ($parameter as $k => $v) { 
     if (empty($v)) { 
       unset($parameter[$k]); 
     } 
   } 
   // 参数排序 
   ksort($parameter); 
   reset($parameter); 
 
   // 拼接获得sign 
   $str = ""; 
   foreach ($parameter as $k => $v) { 
     if (empty($str)) { 
       $str .= $k . "=" . $v; 
     } else { 
       $str .= "&" . $k . "=" . $v; 
     } 
   } 
   $parameter['sign'] = md5($str . $alipay_config['key']); 
   $parameter['sign_type'] = $alipay_config['sign_type']; 
   // ******************************************************请求参数拼接 end************************************************************************************************************************* 
 
 
   // ******************************************************模拟请求 start************************************************************************************************************************* 
   $sHtml = "<form id='alipaysubmit' name='alipaysubmit' action='https://mapi.alipay.com/gateway.do?_input_charset=utf-8' method='get'>"; 
   foreach ($parameter as $k => $v) { 
     $sHtml.= "<input type='hidden' name='" . $k . "' value='" . $v . "'/>"; 
   } 
 
   $sHtml = $sHtml."<script>document.forms['alipaysubmit'].submit();</script>"; 
 
   // ******************************************************模拟请求 end************************************************************************************************************************* 
   echo $sHtml; 
 }

关于使用Laravel怎么实现支付宝支付问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注亿速云行业资讯频道了解更多相关知识。

推荐阅读:
  1. laravel框架下的pc支付宝支付接入
  2. 如何使用PHP实现支付宝支付

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

laravel

上一篇:PHP中怎么利用递归复制文件夹

下一篇:PHP中怎么求最大公约数与最小公倍数

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》