本文目錄一覽:
如何用PHP實現微信支付,求教。新手!說明詳細點
以PHP語言為例,對微信支付的開發流程進行一下說明:
1.獲取訂單信息。
2.根據訂單信息和支付相關的賬號生成sign,並且生成支付參數。
3.將支付參數信息POST到微信伺服器,獲取返回信息。
4.根據返回信息生成相應的支付代碼(微信內部)或是支付二維碼(非微信內),完成支付。
thinkphp微信v3掃碼支付二怎樣向微信返回值
吧微信支付的示例代碼修改成tp中直接使用的實例代碼,並簡單的做了掃碼支付以及回調功能
吧微信支付的示例代碼修改成tp中直接使用的示例代碼,並簡單的做了掃碼支付以及回調功能
用的是模式2,有必要你可以直接拿模式一的代碼執行就可以的。
類的導入看一下我的導入你就明白怎麼導入了。以後再也不用擔心這個玩意兒了。
代碼參考如下
生成支付二維碼的實例代碼:public function index() {
import ( “@.Controller.WxPay.WxPayNativePay” );
$notify = new \WxPayNativePay ();
$url1 = $notify-GetPrePayUrl ( “123456789” );
// 模式二
/**
* 流程:
* 1、調用統一下單,取得code_url,生成二維碼
* 2、用戶掃描二維碼,進行支付
* 3、支付完成之後,微信伺服器會通知支付成功
* 4、在支付成功通知中需要查單確認是否真正支付成功(見:notify.php)
* @作者 希爾瓦柯
* @時間 2016-9-22下午3:41:59
*/
// $price = $_POST [‘price’];
// $prodect_id = $_POST [‘prodect_id’];
// $premission_name = $_POST [‘premission_name’];
$price = 0.01;
$prodect_id = rand ( 2, 8 );
$premission_name = $prodect_id;
// 開始處理
$input = new \WxPayUnifiedOrder ();
$input-SetBody ( “xxxx—” . $premission_name );
$input-SetAttach ( “xxxxx-Attach” );
$input-SetOut_trade_no ( \WxPayConfig::MCHID . date ( “YmdHis” ) );
$input-SetTotal_fee ( $price * 100 );
$input-SetTime_start ( date ( “YmdHis” ) );
$input-SetTime_expire ( date ( “YmdHis”, time () + 600 ) );
$input-SetGoods_tag ( “xxx-tag” );
$input-SetNotify_url ( “ht/index.php/home/Index/notify” );
$input-SetTrade_type ( “NATIVE” );
$input-SetProduct_id ( rand ( 4, 8 ) );
$result = $notify-GetPayUrl ( $input );
$url2 = $result [“code_url”];
// 生成二維碼
error_reporting ( E_ERROR );
import ( “@.Controller.WxPay.PHPQRCODE” );
$url = urldecode ( $url2 );
\QRcode::png ( $url );
}微信支付回調處理的實例代碼:/**
* @功能描述:微信支付回調處理
* @作者 希爾瓦柯
* @時間 2016-9-22下午3:41:59
*/
public function notify() {
// 獲取微信回調的數據
$notifiedData = $GLOBALS [‘HTTP_RAW_POST_DATA’];
// 載入相關的類
import ( “@.Controller.WxPay.WxPayNativePay” );
import ( “@.Controller.WxPay.WxPayData” );
import ( “@.Controller.WxPay.WxPayNotify” );
import ( “@.Controller.WxPay.PayNotifyCallBack” );
$xml_to_arr = \WxPayDataBase::FromXml_4_babbage ( $notifiedData );
// 轉成數組 並寫入緩存
F ( “wx_notified_data”, $xml_to_arr);
// 吧xml原型也寫入xml
F ( “wx_notified_data_xml”, $notifiedData );
// 給微信返回支付狀態值
$notify = new \PayNotifyCallBack ();
// 返回狀態
$notify-Handle ( false );
}
thinkphp微信支付回調是什麼意思
微信支付回調就是說用戶通過微信支付完畢時的返回值去判斷支付結果。
通過返回的結果,去修改資料庫(完成你想實現的功能)
例:用戶支付成功-通過回調判斷-資料庫操作(為會員充值積分)
用戶支付失敗(或取消支付)-通過回調判斷-跳轉到支付失敗頁
原創文章,作者:DIIJ,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/142850.html