很多站长朋友们都不太清楚php调用支付宝,今天小编就来给大家整理php调用支付宝,希望对各位有所帮助,具体内容如下:
本文目录一览: 1、 php,支付宝接口怎样用 2、 PHP可以实现打开手机支付宝软件? 3、 支付宝接口php 如何调用 4、 php 5.3.13怎么使用支付宝RSA2 5、 PHP程序怎么使用支付宝支付 求大神给详细思路 最好简单易懂 是新手 php,支付宝接口怎样用php支付宝接口用法,具体分析如下:
现在流行的网站支持平台,支付宝当仁不让的老大了,现在我们就来告诉你如何使用支付宝api来做第三方支付,把支付宝放到自己网站来,代码如下:
alipay_config.php配置程序如下:
复制代码 代码如下:
<?php
*/
//alipay_config.php 配置程序
$interfaceurl = ":";
$sitename = "网站名称";
$weburl = "http://网站网址";
$o_fee = "0.00"; //平邮费
$e_fee = "0.00"; //快递费
$selleremail = "";//支付宝账号
$payalikey = "";//安全校验码
$imgurl = "pay.gif"; //按钮图片源
$imgtitle = "使用支付宝购买"; //按钮图片说明
?>
alipay.php代码如下:
复制代码 代码如下:
<?php
/*********************************************************************
filename: alipay.php
author: dboyzhang
version: ver 2.0.0 beta1
contact_me: wangwang:dboyzhang
*********************************************************************/
//alipay.php代码
require_once("alipay_config.php");
class alipay
{
function geturl($s1,$s2,$s3,$s4,$s5,$s6,$s7,$s8,$s9,$s10,$s11,$s12,$s13,$s14,$s15,$s16,$s17,$s18,$s19,$s20,$s21,$s22,$s23)
{
$parameter = array(
'cmd' => $s1,
'subject' => $s2,
'body' => $s3,
'order_no' => $s4,
'price' => $s5,
'url' => $s6,
'type' => $s7,
'number' => $s8,
'transport' => $s9,
'ordinary_fee' => $s10,
'express_fee' => $s11,
'readonly' => $s12,
'buyer_msg' => $s13,
'seller' => $s14,
'buyer' => $s15,
'buyer_name' => $s16,
'buyer_address' => $s17,
'buyer_zipcode' => $s18,
'buyer_tel' => $s19,
'buyer_mobile' => $s20,
'partner' => $s21,
);
$url = $s22.$s14."?";
foreach($parameter as $key => $value){
if($value){
$url .= $key."=".urlencode($value)."";
$acsouce .=$key.$value;
}
}
$url .= 'ac='.md5($acsouce.$s23);
return $url;
}
}
?>
pay.php页面如下:
复制代码 代码如下:
<?php
error_reporting(0);
$aliname=$_POST["aliname"];
$alizipcode=$_POST["alizipcode"];
$aliphone=$_POST["aliphone"];
$aliaddress=$_POST["aliaddress"];
$aliorder=$_POST["aliorder"];
$alimailtype=$_POST["alimailtype"];
$alimoney=$_POST["alimoney"];
$alimob=$_POST["alimob"];
$alibody=$_POST["alibody"];
require_once("alipay_config.php");
require_once("alipay.php");
$cmd = '0001';
$subject = "订单号:".$aliorder;
$body = '商品介绍';
$order_no = $aliorder;
$price = $alimoney;
$url = '';//你的网址
$type = '1';
$number = '1';
$transport = $alimailtype;
$ordinary_fee = '0.00';
$express_fee = '0.00';
$readonly = 'true';
$buyer_msg = $alibody;
$seller = $selleremail;
$buyer = '';
$buyer_name = $aliname;
$buyer_address = $aliaddress;
$buyer_zipcode = $alizipcode;
$buyer_tel = $aliphone;
$buyer_mobile = $alimob;
$partner = '2088002008096997';
$geturl = new alipay;
$link = $geturl->geturl
(
$cmd,$subject,$body,$order_no,$price,$url,$type,$number,$transport,
$ordinary_fee,$express_fee,$readonly,$buyer_msg,$seller,$buyer,
$buyer_name,$buyer_address,$buyer_zipcode,$buyer_tel,$buyer_mobile,$partner,
$interfaceurl,$payalikey
);
?>
<html>
<head>
<title>简易支付宝付款php版</title>
<link href="admin_style.css教程" rel=stylesheet>
<meta http-equiv=content-type content="text/html; charset=gb2312">
</head>
<body>
<table class=border id=table1 style="font-size: 9pt" height=185 cellspacing=0
cellpadding=0 width=492 align=center border=0>
<tbody>
<tr>
<td class=topbg height=30>
<div align=center><strong>简易支付宝付款php版</strong></div></td></tr>
<tr>
<td style="border-left: #e4e4e4 1px solid; border-bottom: #e4e4e4 1px solid" colspan=3 height=150>
<table style="font-size: 9pt" height=137 width="100%" align=center bgcolor=#ffffff>
<tbody>
<tr class=tdbg>
<td width="14%">订单号码:</td>
<td width="86%"><? echo $aliorder; ?></td></tr>
<tr class=tdbg>
<td width="14%">收 货 人:</td>
<td width="86%"><? echo $aliname; ?></td></tr>
<tr class=tdbg>
<td width="14%">付款金额:</td>
<td width="86%"><b><? echo $alimoney; ?></b></td></tr>
<tr class=tdbg>
<td width="14%">收货地址:</td>
<td width="86%"><? echo $aliaddress; ?></td></tr>
<tr class=tdbg>
<td>物流方式:</td>
<td><? echo $alimailtype; ?> (1.平邮 2.快递 3.虚拟物品)</td></tr>
<tr class=tdbg>
<td>联系电话:</td>
<td><? echo $aliphone; ?></td></tr>
<tr class=tdbg>
<td>邮政编码:</td>
<td><? echo $alizipcode; ?></td></tr>
<tr class=tdbg>
<td>手机号码:</td>
<td><? echo $alimob; ?></td></tr>
<tr class=tdbg>
<td>客户留言:</td>
<td><? echo $alibody; ?></td></tr>
<tr class=tdbg>
<td></td>
<td><input type="button" name="submit21" onclick="网页特效:history.go(-1)" value="返回修改订单"> <a href="<?php echo $link?>" target="_blank"><img src="<?php echo $imgurl?>" alt="<?php echo $imgtitle?>" border="0" align='absmiddle' border='0'/></a> </td></tr></tbody></table></td></tr></tbody></table>
</body></html>
PHP可以实现打开手机支付宝软件?如果只要php 拉起支付宝,还是可以的,但是你拉起支付宝来做什么,这才是关键,不用php,就普通的html 都能拉起手机上的支付宝。
支付宝接口php 如何调用下载接口代码,之后根据里面的代码和技术文档还有说明来做。
如果你根本就不会编程,那么登陆支付宝的网站,在商家服务 合同列表 里的 申请集成,去提交申请吧。前提是你要已经是签约商户。
下载接口资料的地方,由于不能贴地址,所以文字告诉你。
登陆支付宝的网站,在商家服务 合同列表 文档下载,进去就是。
php 5.3.13怎么使用支付宝RSA2配置开发者信息「私钥」And「App_id」
/* 配置信息 */
// 支付宝分配给开发者的应用ID
$app_id='';
// 开发者私钥,为这里填入方便,去头、去尾、去换行 字符串私钥,私钥处理放在签名方法内。
$private_key='';
// 商户生成签名字符串所使用的签名算法类型,目前支持RSA2和RSA,推荐使用RSA2
$sign_type='RSA2';
/* 配置信息 */
2.组装部分请求参数:根据接口文档组装参数 app_id、method、format、timestamp、charset、version、notify_url、sign_type
/* 组装请求参数部分start */
// 支付宝分配给开发者的应用ID
$params['app_id'] = $app_id;
// 接口名称
$params['method'] = 'alipay.trade.app.pay';
// 仅支持JSON
$params['format'] = 'json';
// 发送请求的时间,格式"yyyy-MM-dd HH:mm:ss"
$params['timestamp'] = date("Y-m-d H:i:s");
// 请求使用的编码格式,如utf-8,gbk,gb2312等
$params['charset'] = 'UTF-8';
// 调用的接口版本,固定为:1.0
$params['version'] = '1.0';
// 支付宝服务器主动通知商户服务器里指定的页面http/https路径。建议商户使用https
$params['notify_url'] = '';
// 商户生成签名字符串所使用的签名算法类型,目前支持RSA2和RSA,推荐使用RSA2
$params['sign_type'] = $sign_type;
/* 组装请求参数部分end */
3.组装业务参数json格式,并填充在$params数组中
/* 组装业务参数json */
// 对一笔交易的具体描述信息。如果是多种商品,请将商品描述字符串累加传给body。
$bizcontent['body'] = '非sdk原生php服务端生成请求订单';
// 商品的标题/交易标题/订单标题/订单关键字等。
$bizcontent['subject'] = 'php代码示例';
/* 生成随机数作为外部订单号start */
$date=date("YmdHis");
$arr=range(1000,9999);
shuffle($arr);
$out_trade_no=$date.$arr[0];
/* 生成随机数作为外部订单号end */
// 商户网站唯一订单号
$bizcontent['out_trade_no'] = $out_trade_no;
// 设置未付款支付宝交易的超时时间,一旦超时,该笔交易就会自动被关闭。当用户进入支付宝收银台页面(不包括登录页面),会触发即刻创建支付宝交易,此时开始计时。取值范围:1m~15d。m-分钟,h-小时,d-天,1c-当天(1c-当天的情况下,无论交易何时创建,都在0点关闭)。 该参数数值不接受小数点, 如 1.5h,可转换为 90m。
$bizcontent['timeout_express']='10m';
// 订单总金额,单位为元,精确到小数点后两位,取值范围[0.01,100000000]
$bizcontent['total_amount'] = '0.01';
// 销售产品码,商家和支付宝签约的产品码
$bizcontent['product_code'] = 'QUICK_MSECURITY_PAY';
// 商品主类型:0—虚拟类商品,1—实物类商品 注:虚拟类商品不支持使用花呗渠道
$bizcontent['goods_type'] = '0';
// 公用回传参数,如果请求时传递了该参数,则返回给商户时会回传该参数。支付宝会在异步通知时将该参数原样返回。本参数必须进行UrlEncode之后才可以发送给支付宝
$bizcontent['passback_params']='spicy%3d%e8%87%aa%e5%ae%9a%e4%b9%89%e5%8f%82%e6%95%b01%26custom%3d%e8%87%aa%e5%ae%9a%e4%b9%89%e5%8f%82%e6%95%b02';
$biz_content=json_encode($bizcontent,JSON_UNESCAPED_UNICODE);
/* 组装业务参数json */
// 将业务参数填充在请求参数内
$params['biz_content'] = $biz_content;
4.排序签名得到sign,并填充在$params数组中「签名方法请往下翻」
// 排序
ksort($params);
// 调用签名方法得到sign填入请求参数
$params['sign'] = sign($params, $params['sign_type'], $private_key);
5.将参数urlencode输出查看,打印出来的参数可以直接放在客户端使用
// htmlspecialchars是为防止浏览器将参数中的「×」和「¬」转义
echo htmlspecialchars(http_build_query($params));
工具方法:签名方法和检查是否为空方法
/**
* 签名函数
*
* @param array $params 请求参数数组
* @param string $signType 签名方式
* @param string $private_key 为了方便只要填一行字符串
* @return string 返回类型
*/
function sign($params,$signType,$private_key){
$stringToBeSigned = "";
$i = 0;
// 将数组使用符号拼接
foreach ($params as $k => $v) {
if (false === checkEmpty($v) "@" != substr($v, 0, 1)) {
if ($i == 0) {
$stringToBeSigned .= "$k" . "=" . "$v";
} else {
$stringToBeSigned .= "" . "$k" . "=" . "$v";
}
$i++;
}
}
unset ($k, $v);
// 私钥处理
$res = "-----BEGIN RSA PRIVATE KEY-----".PHP_EOL.wordwrap($private_key, 64, PHP_EOL, true).PHP_EOL."-----END RSA PRIVATE KEY-----";
($res) or die('您使用的私钥格式错误,请检查RSA私钥配置');
//
if ("RSA2" == $signType) {
openssl_sign($stringToBeSigned, $sign, $res, OPENSSL_ALGO_SHA256);
} else {
openssl_sign($stringToBeSigned, $sign, $res);
}
return base64_encode($sign);
}
/**
* 检查是否为空
*
* @param string $value 请求参数数组
* @return bool 返回类型
*/
function checkEmpty($value) {
if (!isset($value))
return true;
if ($value === null)
return true;
if (trim($value) === "")
return true;
return false;
}
PHP程序怎么使用支付宝支付 求大神给详细思路 最好简单易懂 是新手1)打开上面的网页,从页面下方的7中支付方式中选择你需要的方式并点击进去,
2)点击demo下载选择对应你需求的demo
3)把demo代码引入到你的php项目中,lib里的内容不需要你做任何更改,阅读readme说明文档,在吧除lib外的php文件都看一遍,里面每个参数的作用都说明的很清楚,文件里的index.php就是你要用curl去模拟支付请求的路径,当然你配置完成后也可以打开index.php去完成一次支付
关于php调用支付宝的介绍到此就结束了,不知道本篇文章是否对您有帮助呢?如果你还想了解更多此类信息,记得收藏关注本站,我们会不定期更新哦。
查看更多关于php调用支付宝 php调用支付宝和微信支付的详细内容...