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 相关文章推荐
在WIN98下以apache模块方式安装php
Oct 09 PHP
用PHP实现将GB编码转换为UTF8
Nov 25 PHP
PHP的开发框架的现状和展望
Mar 16 PHP
php 获取本机外网/公网IP的代码
May 09 PHP
约瑟夫环问题的PHP实现 使用PHP数组内部指针操作函数
Oct 12 PHP
需要注意的几个PHP漏洞小结
Feb 05 PHP
php模拟post行为代码总结(POST方式不是绝对安全)
Feb 22 PHP
php 操作符与控制结构
Mar 07 PHP
php中操作memcached缓存进行增删改查数据的实现代码
Aug 15 PHP
PHP正则表达式入门教程(推荐)
May 18 PHP
PHP异常处理定义与使用方法分析
Jul 25 PHP
XAMPP升级PHP版本实现步骤解析
Sep 04 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
一个没有MYSQL数据库支持的简易留言本的编写
2006/10/09 PHP
php源码加密 仿微盾PHP加密专家(PHPCodeLock)
2010/05/06 PHP
PHP数字和字符串ID互转函数(类似优酷ID)
2014/06/30 PHP
PHP+Session防止表单重复提交的解决方法
2018/04/09 PHP
php正确输出json数据的实例讲解
2018/08/21 PHP
jQuery实现切换字体大小的方法
2015/03/10 Javascript
用jQuery向div中添加Html文本内容的简单实现
2016/07/13 Javascript
获取jqGrid中选择的行的数据
2016/11/30 Javascript
浅谈DOM的操作以及性能优化问题-重绘重排
2017/01/08 Javascript
JQuery 封装 Ajax 常用方法(推荐)
2017/05/21 jQuery
关于vue v-for 循环问题(一行显示四个,每一行的最右边那个计算属性)
2018/09/04 Javascript
浅谈React Event实现原理
2018/09/20 Javascript
vue-router 起步步骤详解
2019/03/26 Javascript
Vue实现手机扫描二维码预览页面效果
2020/05/28 Javascript
搭建vscode+vue环境的详细教程
2020/08/31 Javascript
Nuxt的动态路由和参数校验操作
2020/11/09 Javascript
python连接mysql调用存储过程示例
2014/03/05 Python
解决python写的windows服务不能启动的问题
2014/04/15 Python
Python基础教程之浅拷贝和深拷贝实例详解
2017/07/15 Python
详解Python的三种拷贝方式
2020/02/11 Python
python实现猜拳游戏
2020/03/04 Python
Pyqt5 关于流式布局和滚动条的综合使用示例代码
2020/03/24 Python
Python如何使用PIL Image制作GIF图片
2020/05/16 Python
Python使用windows设置定时执行脚本
2020/11/12 Python
详解Python之Scrapy爬虫教程NBA球员数据存放到Mysql数据库
2021/01/24 Python
Html5新增标签有哪些
2017/04/13 HTML / CSS
意大利奢侈品综合电商网站:MODES
2019/12/14 全球购物
英国哈罗德园艺:Harrod Horticultural
2020/03/31 全球购物
成人毕业生自我鉴定
2013/10/18 职场文书
毕业生的自我鉴定
2013/10/29 职场文书
工程班组长岗位职责
2013/12/30 职场文书
《广玉兰》教学反思
2014/04/14 职场文书
优秀共青团员事迹材料
2014/12/25 职场文书
apache基于端口创建虚拟主机的示例
2021/04/24 Servers
FFmpeg视频处理入门教程(新手必看)
2022/01/22 杂记
使用scrapy实现增量式爬取方式
2022/06/21 Python