PHP支付宝当面付2.0代码


Posted in PHP onDecember 21, 2018

本文实例为大家分享了PHP支付宝当面付2.0代码,供大家参考,具体内容如下

//支付宝条码支付,直接调用ali_tiaoma_pay方法,把条码和金额传进去就ok
function ali_tiaoma_pay($tiaoma,$price){
 
  $data['scene'] = 'bar_code'; //支付场景
  $data['out_trade_no'] = date("Ymd").rand(10000,99999); //订单号
  $data['total_amount'] = $price; //支付金额
  $data['auth_code'] = $tiaoma;  //支付授权码
  $data['subject'] = '订单标题'; //订单标题
  $data['body'] = '订单说明'; //订单说明
  $data = json_encode($data);

  $params['app_id'] = $alipay_account;
  $params['method'] = 'alipay.trade.pay';
  $params['charset'] = 'utf-8';
  $params['sign_type'] = 'RSA2';
  $params['timestamp'] = date("Y-m-d H:i:s");
  $params['version'] = '1.0';
  $params['notify_url'] = ""; 
  $params['biz_content'] = $data;
  ksort($params); //对将要签名的数组排序
 
  $string = $this->toUrlParam($params); //将数组转换成字符串
  $params['sign'] = $this->alipay_sign($string); //将字符串签名
  $url = 'https://openapi.alipay.com/gateway.do?' . http_build_query($params);
  $return = file_get_contents($url); //打开支付请求连接 获取二维码地址
  $return = json_decode($return, true); //将返回的字符串转换为数组
  return $return;
}
 
 
//app支付宝签名
function alipay_sign($data, $signType = "RSA2") 
  $res = "-----BEGIN RSA PRIVATE KEY-----\n" .
    wordwrap('你的商户私钥,必须和公匙匹配', 64, "\n", true) .
    "\n-----END RSA PRIVATE KEY-----";
  ($res) or die('您使用的私钥格式错误,请检查RSA私钥配置');
  if ("RSA2" == $signType) {
    openssl_sign($data, $sign, $res, "SHA256");
  } else {
    openssl_sign($data, $sign, $res);
  }
  $sign = base64_encode($sign);
  return $sign;
}
 
/*
 * 格式化参数格式化成url参数
*/
function toUrlParam($param){
  $buff = "";
  foreach($param as $k => $v)
  {
    if($k != "sign" && $v != "" && !is_array($v)){
      $buff .= $k."=".$v."&";
    }
  }
 
  $buff = trim($buff, "&");
  return $buff;
}

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

PHP 相关文章推荐
PHP使用数组实现队列
Feb 05 PHP
typecho插件编写教程(一):Hello World
May 28 PHP
Apache服务器下防止图片盗链的办法
Jul 06 PHP
PHP之预定义接口详解
Jul 29 PHP
PHP合并discuz用户脚本的方法
Aug 04 PHP
PHP程序中的文件锁、互斥锁、读写锁使用技巧解析
Mar 21 PHP
Yii实现的多级联动下拉菜单
Jul 13 PHP
php中遍历二维数组并以表格的形式输出的方法
Jan 03 PHP
Laravel中任务调度console使用方法小结
May 07 PHP
PHPMailer ThinkPHP实现自动发送邮件功能
Jun 10 PHP
PHP实现获取ip地址的5种方法,以及插入用户登录日志操作示例
Feb 28 PHP
php解决约瑟夫环算法实例分析
Sep 30 PHP
php json转换相关知识(小结)
Dec 21 #PHP
PHP后期静态绑定实例浅析
Dec 21 #PHP
PHP后期静态绑定之self::限制实例分析
Dec 21 #PHP
PHP类与对象后期静态绑定操作实例详解
Dec 20 #PHP
PHP设计模式之模板方法模式实例浅析
Dec 20 #PHP
PHP设计模式之模板模式定义与用法详解
Dec 20 #PHP
PHP面向对象程序设计之接口的继承定义与用法详解
Dec 20 #PHP
You might like
生成卡号php代码
2008/04/09 PHP
全局记录程序片段的运行时间 正确找到程序逻辑耗时多的断点
2011/01/06 PHP
php中文验证码实现方法
2015/06/18 PHP
PHP模板引擎Smarty自定义变量调解器用法
2016/04/11 PHP
php实现36进制与10进制转换功能示例
2017/01/10 PHP
IE中直接运行显示当前网页中的图片 推荐
2006/08/31 Javascript
ASP.NET jQuery 实例11 通过使用jQuery validation插件简单实现用户登录页面验证功能
2012/02/03 Javascript
JSON传递bool类型数据的处理方式介绍
2013/09/18 Javascript
javascript实现验证IP地址等相关信息代码
2015/05/10 Javascript
Node.js+Express配置入门教程
2016/05/19 Javascript
怎样判断jQuery当前元素是隐藏还是显示
2016/11/23 Javascript
React简单介绍
2017/05/24 Javascript
jQuery实现动态显示select下拉列表数据的方法
2018/02/05 jQuery
vue ssr 指南详读
2018/06/29 Javascript
JavaScript高阶教程之“==”隐藏下的类型转换
2019/04/11 Javascript
JavaScript定时器设置、使用与倒计时案例详解
2019/07/08 Javascript
vue.js中ref和$refs的使用及示例讲解
2019/08/14 Javascript
通过实例了解JS 连续赋值
2019/09/24 Javascript
解决vue语法会有延迟加载显现{{xxx}}的问题
2019/11/14 Javascript
微信小程序实现星级评价
2019/11/20 Javascript
[49:35]LGD vs OG 2018国际邀请赛淘汰赛BO3 第二场 8.25
2018/08/29 DOTA
举例区分Python中的浅复制与深复制
2015/07/02 Python
python3中的md5加密实例
2018/05/29 Python
对Python中实现两个数的值交换的集中方法详解
2019/01/11 Python
Python map及filter函数使用方法解析
2020/08/06 Python
css3学习之2D转换功能详解
2016/12/23 HTML / CSS
Michael Kors加拿大官网:购买设计师手袋、手表、鞋子、服装等
2019/03/16 全球购物
毕业生的自我评价范文
2013/12/31 职场文书
政法大学毕业生自荐信范文
2014/01/01 职场文书
班组长岗位职责范本
2014/01/05 职场文书
村官个人总结范文
2015/03/03 职场文书
八月一日观后感
2015/06/10 职场文书
2015小学师德工作总结
2015/07/21 职场文书
2019年特色火锅店的创业计划书模板
2019/08/28 职场文书
如何使用PyCharm及常用配置详解
2021/06/03 Python
新手入门Jvm-- JVM对象创建与内存分配机制
2021/06/18 Java/Android