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+mysql保存和输出文件
Oct 09 PHP
PHP设计模式之解释器模式的深入解析
Jun 13 PHP
分享最受欢迎的5款PHP框架
Nov 27 PHP
php通过修改header强制图片下载的方法
Mar 24 PHP
php控制文件下载速度的方法
Mar 24 PHP
php检测图片主要颜色的方法
Jul 01 PHP
浅析Yii2 GridView实现下拉搜索教程
Apr 22 PHP
CodeIgniter连贯操作的底层原理分析
May 17 PHP
Laravel中Facade的加载过程与原理详解
Sep 22 PHP
PHP 多任务秒级定时器的实现方法
May 13 PHP
php unlink()函数使用教程
Jul 12 PHP
使用PHP开发留言板功能
Nov 19 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 str_pad 函数使用详解
2009/01/13 PHP
PHP中array_map与array_column之间的关系分析
2014/08/19 PHP
PHP中使用strpos函数实现屏蔽敏感关键字功能
2014/08/21 PHP
微信公众号模板消息群发php代码示例
2016/12/29 PHP
php用wangeditor3实现图片上传功能
2019/08/22 PHP
JavaScript判断变量是对象还是数组的方法
2014/08/28 Javascript
详解WordPress开发中get_current_screen()函数的使用
2016/01/11 Javascript
jquery对dom节点的操作【推荐】
2016/04/15 Javascript
jQuery EasyUI 组件加上“清除”功能实例详解
2017/04/11 jQuery
js实现微信/QQ直接跳转到支付宝APP打开口令领红包功能
2018/01/09 Javascript
vue实现动态添加数据滚动条自动滚动到底部的示例代码
2018/07/06 Javascript
Layer弹出层动态获取数据的方法
2018/08/20 Javascript
JavaScript Dom 绑定事件操作实例详解
2019/10/02 Javascript
Vue中使用matomo进行访问流量统计的实现
2019/11/05 Javascript
ElementUI Tree 树形控件的使用并给节点添加图标
2020/02/27 Javascript
Electron整合React使用搭建开发环境的步骤详解
2020/06/07 Javascript
JavaScript中作用域链的概念及用途讲解
2020/08/06 Javascript
[44:01]2018DOTA2亚洲邀请赛3月30日 小组赛B组 EG VS paiN
2018/03/31 DOTA
详解Python编程中包的概念与管理
2015/10/16 Python
对python 自定义协议的方法详解
2019/02/13 Python
Python 计算任意两向量之间的夹角方法
2019/07/05 Python
Pytorch中膨胀卷积的用法详解
2020/01/07 Python
django列表筛选功能的实现代码
2020/03/27 Python
TensorFLow 数学运算的示例代码
2020/04/21 Python
Pytorch实验常用代码段汇总
2020/11/19 Python
HTML5上传文件显示进度的实现代码
2012/08/30 HTML / CSS
美国时尚孕妇装品牌:A Pea in the Pod
2017/07/16 全球购物
Senreve官网:美国旧金山的奢侈手袋品牌
2019/03/21 全球购物
经典c++面试题五
2014/12/17 面试题
高中学生期末评语
2014/04/25 职场文书
2014年党支部学习材料
2014/05/19 职场文书
商务经理岗位职责
2014/08/03 职场文书
文明单位汇报材料
2014/12/24 职场文书
2015年党风廉政承诺书
2015/01/22 职场文书
python如何利用cv2.rectangle()绘制矩形框
2022/12/24 Python