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中$_SERVER[PHP_SELF] 和 $_SERVER[SCRIPT_NAME]之间的区别
Sep 05 PHP
用PHP查询搜索引擎排名位置的代码
Jan 05 PHP
php下过滤html代码的函数 提高程序安全性
Mar 02 PHP
PHP+Mysql+Ajax+JS实现省市区三级联动
May 23 PHP
php检查是否是ajax请求的方法
Apr 16 PHP
Linux+Nginx+MySQL下配置论坛程序Discuz的基本教程
Dec 23 PHP
使用JavaScript创建新样式表和新样式规则
Jun 14 PHP
PHP 接入微信扫码支付总结(总结篇)
Nov 03 PHP
PHP get_html_translation_table()函数用法讲解
Feb 16 PHP
PHP中quotemeta()函数的用法讲解
Apr 04 PHP
php使用redis的几种常见操作方式和用法示例
Feb 20 PHP
PHP队列场景以及实现代码实例详解
Feb 26 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
新浪新闻小偷
2006/10/09 PHP
把PHP安装为Apache DSO
2006/10/09 PHP
Drupal 添加模块出现莫名其妙的错误的解决方法(往往出现在模块较多时)
2011/04/18 PHP
PHP图片等比缩放类SimpleImage使用方法和使用实例分享
2014/04/10 PHP
PHP中异常处理的一些方法整理
2015/07/03 PHP
thinkphp微信开之安全模式消息加密解密不成功的解决办法
2015/12/02 PHP
PHP定义字符串的四种方式详解
2018/02/06 PHP
javascript 支持ie和firefox杰奇翻页函数
2008/07/22 Javascript
javascript TextArea动态显示剩余字符
2008/10/22 Javascript
JQuery 获得绝对,相对位置的坐标方法
2010/02/09 Javascript
JS左右无缝滚动(一般方法+面向对象方法)
2012/08/17 Javascript
javascript实现分栏显示小技巧附图
2014/10/13 Javascript
在React框架中实现一些AngularJS中ng指令的例子
2016/03/06 Javascript
不定义JQuery插件 不要说会JQuery
2016/03/07 Javascript
详解JS几种变量交换方式以及性能分析对比
2016/11/25 Javascript
对于Javascript 执行上下文的全面了解
2017/09/05 Javascript
jquery引入外部CDN 加载失败则引入本地jq库
2018/05/23 jQuery
js最实用string(字符串)类型的使用及截取与拼接详解
2019/04/26 Javascript
基于webpack4+vue-cli3项目实现换肤功能
2019/07/17 Javascript
pycharm 使用心得(三)Hello world!
2014/06/05 Python
Python2与python3中 for 循环语句基础与实例分析
2017/11/20 Python
Python解决N阶台阶走法问题的方法分析
2017/12/28 Python
python保存二维数组到txt文件中的方法
2018/11/15 Python
python区块及区块链的开发详解
2019/07/03 Python
在pycharm下设置自己的个性模版方法
2019/07/15 Python
python使用多线程编写tcp客户端程序
2019/09/02 Python
解决django中form表单设置action后无法回到原页面的问题
2020/03/13 Python
call在Python中改进数列的实例讲解
2020/12/09 Python
CSS3制作半透明边框(Facebox)类似渐变
2012/12/09 HTML / CSS
英国最大的电脑零售连锁店集团:PC World
2016/10/10 全球购物
财务方面个人工作的自我评价
2013/12/28 职场文书
银行员工职业规划范文
2014/01/21 职场文书
学校读书活动总结
2014/06/30 职场文书
2014审计局领导班子民主生活会对照检查材料思想汇报
2014/09/20 职场文书
java后台调用接口及处理跨域问题的解决
2022/03/24 Java/Android
Redis超详细讲解高可用主从复制基础与哨兵模式方案
2022/04/07 Redis