Laravel使用支付宝进行支付的示例代码


Posted in PHP onAugust 16, 2017

本文介绍了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; 
 }

 以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

PHP 相关文章推荐
PHP中for与foreach的区别分析
Mar 09 PHP
给初学者的30条PHP最佳实践(荒野无灯)
Aug 02 PHP
解析php中call_user_func_array的作用
Jun 07 PHP
PHP函数func_num_args用法实例分析
Dec 07 PHP
PHP多维数组遍历方法(2种实现方法)
Dec 10 PHP
PHP加密解密实例分析
Dec 25 PHP
PHP模板引擎Smarty内建函数foreach,foreachelse用法分析
Apr 11 PHP
PHP使用递归算法无限遍历数组示例
Jan 13 PHP
php常用经典函数集锦【数组、字符串、栈、队列、排序等】
Aug 23 PHP
laravel框架中控制器的创建和使用方法分析
Nov 23 PHP
如何在PHP环境中使用ProtoBuf数据格式
Jun 19 PHP
详解PHP设计模式之依赖注入模式
May 25 PHP
laravel 中如何使用ajax和vue总结
Aug 16 #PHP
yii gridview实现时间段筛选功能
Aug 15 #PHP
PHP使用GD库制作验证码的方法(点击验证码或看不清会刷新验证码)
Aug 15 #PHP
Laravel学习教程之IOC容器的介绍与用例
Aug 15 #PHP
Laravel 5.4向IoC容器中添加自定义类的方法示例
Aug 15 #PHP
PHP高精确度运算BC函数库实例详解
Aug 15 #PHP
PHP+原生态ajax实现的省市联动功能详解
Aug 15 #PHP
You might like
php addslashes及其他清除空格的方法是不安全的
2012/01/25 PHP
采用thinkphp自带方法生成静态html文件详解
2014/06/13 PHP
PHP使用GIFEncoder类生成的GIF动态图片验证码
2014/07/01 PHP
php通过隐藏表单控件获取到前两个页面的url
2014/09/09 PHP
PHP Warning: Module 'modulename' already loaded in问题解决办法
2015/03/16 PHP
php文件压缩之PHPZip类用法实例
2015/06/18 PHP
Laravel的throttle中间件失效问题解决方法
2016/10/09 PHP
JQuery 无废话系列教程(一) jquery入门 [推荐]
2009/06/23 Javascript
JQuery验证工具类搜集整理
2013/01/16 Javascript
jQuery ajax(复习)—Baidu ajax request分离版
2013/01/24 Javascript
wap手机图片滑动切换特效无css3元素js脚本编写
2014/07/28 Javascript
如何使用jquery easyui创建标签组件
2015/11/18 Javascript
jQuery实现鼠标双击Table单元格变成文本框及输入内容后更新到数据库的方法
2015/11/25 Javascript
IE8 内存泄露(内存一直增长 )的原因及解决办法
2016/04/06 Javascript
jQuery获取与设置iframe高度的方法
2016/08/01 Javascript
js原生跨域_用script标签的简单实现
2016/09/24 Javascript
Bootstrap下拉菜单样式
2017/02/07 Javascript
TypeScript入门-接口
2017/03/30 Javascript
微信小程序使用 vant Dialog组件的正确方式
2020/02/21 Javascript
[04:40]2016国际邀请赛中国区预选赛全程TOP10镜头集锦
2016/07/01 DOTA
Pycharm设置界面全黑的方法
2018/05/23 Python
python统计多维数组的行数和列数实例
2018/06/23 Python
Django分页查询并返回jsons数据(中文乱码解决方法)
2018/08/02 Python
Python实现按逗号分隔列表的方法
2018/10/23 Python
Python中实现输入超时及如何通过变量获取变量名
2020/01/18 Python
keras实现多GPU或指定GPU的使用介绍
2020/06/17 Python
详解css position 5种不同的值的用法
2019/07/30 HTML / CSS
DogBuddy荷兰:找到你最完美的狗保姆
2019/04/17 全球购物
乌克兰移动电子产品和相关配件的在线商店:iTMag
2020/03/16 全球购物
工程师自我评价怎么写
2013/09/19 职场文书
小学综治宣传月活动总结
2014/07/02 职场文书
股东授权委托书范文
2014/09/13 职场文书
倡议书格式及范文
2015/04/29 职场文书
2016年百日安全生产活动总结
2016/04/06 职场文书
使用Ajax实现无刷新上传文件
2022/04/12 Javascript
MySQL8.0 Undo Tablespace管理详解
2022/06/16 MySQL