WeChat決済のサンプルコードをtpで直接使用するサンプルコードに変更し、スキャンコード決済とコールバック関数を作るだけです
WeChat決済のサンプルコードをtpで直接使用するサンプルコードに修正し、スキャンコード決済とコールバック関数を作るだけです
必要に応じてモード 2 が使用され、モード 1 でコードを直接実行できます。
クラスのインポート 私のインポートを見れば、インポート方法が理解できるでしょう。もうこのことについて心配する必要はありません。
コードリファレンスは以下の通りです
支払い用 QR コードを生成するコード例: public functionindex() {<br>
インポート ( "@.Controller.WxPay.WxPayNativePay" );<br>
$notify = new WxPayNativePay ();<br>
$url1 = $notify->GetPrePayUrl ( "123456789" );<br>
//モード 2<br>
/**<br>
* プロセス: <br>
* 1. ユニファイドオーダーを呼び出し、code_urlを取得し、QRコードを生成します<br>
* 2. ユーザーはQRコードをスキャンして支払いを行います<br>
* 3. 支払いが完了すると、WeChatサーバーから支払いが成功したことが通知されます<br>
* 4. 支払い成功通知では、実際に支払いが成功したかどうかを確認するために注文を確認する必要があります (notify.php を参照) <br>
*/<br>
// $price = $_POST ['価格'];<br>
// $prodect_id = $_POST ['prodect_id'];<br>
// $premission_name = $_POST ['premission_name'];<br>
$price = 0.01;<br>
$product_id = rand ( 2, 8 );<br>
$premission_name = $prodect_id;<br>
//処理開始<br>
$input = new WxPayUnifiedOrder ();<br>
$input->SetBody ( "xxxx---" . $premission_name );<br>
$input->SetAttach ( "xxxxx-Attach" );<br>
$input->SetOut_trade_no ( WxPayConfig::MCHID . date ( "YmdHis" ) );<br>
$input->SetTotal_fee ( $price * 100 );<br>
$input->SetTime_start ( date ( "YmdHis" ) );<br>
$input->SetTime_expire ( date ( "YmdHis", time () + 600 ) );<br>
$input->SetGoods_tag ( "xxx-tag" );<br>
$input->SetNotify_url ( "http://xxxx.com/wxtest/index.php/home/Index/notify" );<br>
$input->SetTrade_type ( "NATIVE" );<br>
$input->SetProduct_id ( rand ( 4, 8 ) );<br>
$result = $notify->GetPayUrl ( $input );<br>
$url2 = $result ["code_url"];<br>
// QRコードを生成します<br>
error_reporting (E_ERROR);<br>
インポート ( "@.Controller.WxPay.PHPQRCODE" );<br>
$url = urldecode ($url2);<br>
QRcode::png ( $url );<br>} }
WeChat 支払いコールバック処理のコード例: /**<br>
* @関数説明: WeChat決済コールバック処理<br>
*
* * @Time 2016-9-22 3:41:59 pm<br>
*/<br>
パブリック関数notify() {<br>
//WeChat コールバック データを取得します<br>
$notifiedData = $GLOBALS ['HTTP_RAW_POST_DATA'];<br>
// 関連クラスをロードします<br>
インポート ( "@.Controller.WxPay.WxPayNativePay" );<br>
インポート ( "@.Controller.WxPay.WxPayData" );<br>
インポート ( "@.Controller.WxPay.WxPayNotify" );<br>
インポート ( "@.Controller.WxPay.PayNotifyCallBack" );<br>
$xml_to_arr = WxPayDataBase::FromXml_4_babbage ( $notifiedData );<br>
//配列に変換してキャッシュに書き込みます<br>
F ("wx_notified_data", $xml_to_arr);<br>
// xml プロトタイプも xml に書きましょう<br>
F ("wx_notified_data_xml", $notifiedData);<br>
<br>
//支払いステータス値を WeChat に返します<br>
$notify = new PayNotifyCallBack ();<br>
// ステータスを返す <br>
$notify->ハンドル ( false );<br>
}<br>これが私のような弱いスキルを持つ同僚にとって役立つことを願っています
wxpay4tp.zip (1.25 MB ダウンロード: 8 回)