溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

如何用php實(shí)現(xiàn)支付寶支付

發(fā)布時(shí)間:2021-12-02 10:34:14 來(lái)源:億速云 閱讀:406 作者:iii 欄目:編程語(yǔ)言

這篇文章主要講解了“如何用php實(shí)現(xiàn)支付寶支付”,文中的講解內(nèi)容簡(jiǎn)單清晰,易于學(xué)習(xí)與理解,下面請(qǐng)大家跟著小編的思路慢慢深入,一起來(lái)研究和學(xué)習(xí)“如何用php實(shí)現(xiàn)支付寶支付”吧!

用php實(shí)現(xiàn)支付寶支付的方法:1、掃碼登錄支付寶開放平臺(tái)注冊(cè);2、找到開發(fā)信息,并開啟RSA2密鑰模式;3、查看支付寶私鑰公鑰等信息;4、下載支付寶支付的sdk;5、通過創(chuàng)建demo來(lái)實(shí)現(xiàn)支付寶支付即可。

如何用php實(shí)現(xiàn)支付寶支付

本文操作環(huán)境:Windows7系統(tǒng)、PHP7.4版、DELL G3電腦

怎么用php實(shí)現(xiàn)支付寶支付?

PHP實(shí)現(xiàn)支付寶支付:

提示:這里的demo使用的時(shí)沙箱支付 需要先注冊(cè)沙箱賬號(hào)等


注冊(cè)沙箱賬號(hào):

  1. 首先掃碼登錄支付寶開放平臺(tái)注冊(cè)
    地址:https://open.alipay.com/

如何用php實(shí)現(xiàn)支付寶支付

  1. 掃碼登錄注冊(cè)后進(jìn)入控制臺(tái),滑到頁(yè)面中間找到研發(fā)服務(wù)

    如何用php實(shí)現(xiàn)支付寶支付

  2. 點(diǎn)擊研發(fā)服務(wù)可以看到自己的沙箱服務(wù)的相關(guān)信息

  3. 找到下面的開發(fā)信息,開啟RSA2密鑰模式
    如何用php實(shí)現(xiàn)支付寶支付
    點(diǎn)擊查看可以看到自己的支付寶私鑰公鑰等信息 要保存下來(lái),之后要用到?。?!

關(guān)于應(yīng)用網(wǎng)關(guān)和授權(quán)回調(diào)地址的設(shè)置可查看文檔
地址:https://developer.aliyun.com/article/707583

到這里我們的沙箱環(huán)境已經(jīng)注冊(cè)完成,下面我們開始完成一個(gè)支付的小demo!


下載支付寶支付的sdk:

根據(jù)編程語(yǔ)言下載支付寶的SDK
地址:https://render.alipay.com/p/f/fdjwq8nu2a/pages/home/index.html (這里以PHP語(yǔ)言為例)
如何用php實(shí)現(xiàn)支付寶支付

解壓目錄如下:demo.php是我自己創(chuàng)建的
如何用php實(shí)現(xiàn)支付寶支付

下面我們寫一個(gè)簡(jiǎn)單的demo來(lái)實(shí)現(xiàn)支付寶支付

<?php


require "alipay/aop/AopClient.php";  //引入alipay文件
require "alipay/aop/request/AlipayTradeWapPayRequest.php";  //引入alipay文件

//配置支付寶相關(guān)參數(shù)
$config = [
    'alipay_appid' = 2021xxxx,  //appid
    'alipay_rsaprivateKey'=>'xxxx', //開發(fā)者私鑰
    'alipay_alipayrsapublicKey'=>'xxxx',  //支付寶公鑰
    'alipay_notify'=>'http://www.xxx.com/xxx/xxx', 
    //支付寶回調(diào)地址 支付成功后支付寶會(huì)把消息發(fā)送給此接口,在此接口中完成支付成功后的相關(guān)操作即可
];

$aop = new AopClient();
// $aop->gatewayUrl = "https://openapi.alipaydev.com/gateway.do";     //網(wǎng)關(guān)地址要使用沙箱網(wǎng)關(guān)alipaydev
$aop->gatewayUrl = "https://openapi.alipaydev.com/gateway.do"; //網(wǎng)關(guān)地址要使用沙箱網(wǎng)關(guān)alipaydev

//支付寶分配給開發(fā)者的應(yīng)用ID
$aop->appId = $config['alipay_appid'];

//請(qǐng)?zhí)顚戦_發(fā)者私鑰去頭去尾去回車,一行字符串
$aop->rsaPrivateKey = $config['alipay_rsaprivateKey'];

//請(qǐng)?zhí)顚懼Ц秾毠€,一行字符串
$aop->alipayrsaPublicKey = $config['alipay_alipayrsapublicKey'];

返回?cái)?shù)據(jù)格式
$aop->format = "json";

// 表單提交字符集編碼
$aop->postCharset = "utf-8";

//簽名類型
$aop->signType = "RSA2";

//api版本
$aop->apiVersion = '1.0';
//實(shí)例化具體API對(duì)應(yīng)的request類,類名稱和接口名稱對(duì)應(yīng),當(dāng)前調(diào)用接口名稱:alipay.trade.app.pay
$request = new AlipayTradeWapPayRequest();
//SDK已經(jīng)封裝掉了公共參數(shù),這里只需要傳入業(yè)務(wù)參數(shù),沙箱環(huán)境的product_code只能是FAST_INSTANT_TRADE_PAY
$info = [
    'body' => 'xxx',
    'subject' => '標(biāo)題',  //訂單標(biāo)題。
    'out_trade_no' => time().rand(1111,9999),  //商戶網(wǎng)站唯一訂單號(hào) 自定義的訂單號(hào)
    'total_amount' => 1, //訂單總金額。單位為元,精確到小數(shù)點(diǎn)后兩位,取值范圍:[0.01,100000000] 。
];
$info = json_encode($info, JSON_UNESCAPED_UNICODE);

//支付寶服務(wù)器主動(dòng)通知商戶服務(wù)器里指定的頁(yè)面http/https路徑。 支付回調(diào)
$request->setNotifyUrl($config['alipay_notify']);
$request->setBizContent($info);
//這里和普通的接口調(diào)用不同,使用的是sdkExecute
$result = $aop->pageExecute($request);


return $result;


//$responseNode = str_replace(".", "_", $request->getApiMethodName()) . "_response";
//$resultCode = $result->$responseNode->code;
//if(!empty($resultCode)&&$resultCode == 10000){
//    echo "成功";
//} else {
//    echo "失敗";
//}
詳細(xì)參數(shù)可查看文檔 https://opendocs.alipay.com/apis/api_1/alipay.trade.wap.pay?scene=21

下面我們來(lái)測(cè)試一下

如何用php實(shí)現(xiàn)支付寶支付
此時(shí)訪問我們的demo.php文件 已經(jīng)成功喚起支付寶支付 下面我們登錄沙箱支付的買家賬號(hào)完成支付即可

如何用php實(shí)現(xiàn)支付寶支付

感謝各位的閱讀,以上就是“如何用php實(shí)現(xiàn)支付寶支付”的內(nèi)容了,經(jīng)過本文的學(xué)習(xí)后,相信大家對(duì)如何用php實(shí)現(xiàn)支付寶支付這一問題有了更深刻的體會(huì),具體使用情況還需要大家實(shí)踐驗(yàn)證。這里是億速云,小編將為大家推送更多相關(guān)知識(shí)點(diǎn)的文章,歡迎關(guān)注!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

php
AI