Heim Backend-Entwicklung PHP-Tutorial Implementierungshandbuch für die WeChat-Zahlungsfunktion für die Entwicklung von WeChat-Miniprogrammen mit EasyWeChat und PHP

Implementierungshandbuch für die WeChat-Zahlungsfunktion für die Entwicklung von WeChat-Miniprogrammen mit EasyWeChat und PHP

Jul 18, 2023 pm 03:12 PM
php easywechat 微信支付功能

Anleitung zur Implementierung der WeChat-Zahlungsfunktion mit EasyWeChat und PHP zur Entwicklung von WeChat-Miniprogrammen

Im aktuellen Zeitalter des mobilen Internets ist die WeChat-Zahlung zu einer sehr beliebten Zahlungsmethode geworden. Für Entwickler, die WeChat-Miniprogramme entwickeln, ist die Implementierung der WeChat-Zahlungsfunktion ein sehr wichtiger Teil, der den Miniprogrammen einen besseren Geschäftswert bringen kann. In diesem Leitfaden erfahren Sie, wie Sie mit EasyWeChat und PHP die WeChat-Zahlungsfunktion des WeChat-Applets entwickeln.

1. Lernen Sie EasyWeChat kennen

EasyWeChat ist ein inoffizielles Open-Source-Projekt, das auf der öffentlichen WeChat-Plattform basiert. Es bietet ein einfaches und benutzerfreundliches PHP-SDK, das problemlos mit öffentlichen WeChat-Konten interagieren kann. Es bietet eine Reihe von Schnittstellen, darunter Benutzerauthentifizierung, Nachrichtenverwaltung, Vorlagennachrichten, Benutzertags usw. Gleichzeitig unterstützt EasyWeChat auch die WeChat-Zahlungsfunktion.

2. Beantragen Sie die WeChat-Zahlung

Bevor Sie die WeChat-Zahlung nutzen, müssen Sie zunächst die Bindung eines Händlerkontos auf der WeChat-Zahlungsplattform beantragen. Nach erfolgreicher Beantragung erhalten Sie eine Händlernummer und zugehörige Schlüssel. Diese Informationen werden für nachfolgende Zahlungsschnittstellenaufrufe verwendet.

3. Installieren Sie EasyWeChat

Bevor Sie mit der Entwicklung beginnen, müssen Sie zunächst EasyWeChat in Ihrem Projekt installieren. Es kann über Composer installiert werden, öffnen Sie die Befehlszeile, geben Sie das Stammverzeichnis des Projekts ein und führen Sie den folgenden Befehl aus:

composer require overtrue/wechat
Nach dem Login kopieren

Nach Abschluss der Installation führen Sie EasyWeChat in das Projekt ein:

use EasyWeChatFactory;
Nach dem Login kopieren

4. Konfigurieren Sie zahlungsbezogene Parameter

Beginnen Sie mit der Nutzung von EasyWeChat für die Zahlung. Vor der Funktionsentwicklung müssen zunächst die Zahlungsparameter konfiguriert werden. Angenommen, wir haben ein config-Verzeichnis im Stammverzeichnis des Projekts und erstellen in diesem Verzeichnis eine wechat.php-Datei: config目录,并在该目录下创建一个wechat.php文件:

return [
    'mini_program' => [
        'app_id' => 'your-mini-program-app-id',
        'mch_id' => 'your-merchant-id',
        'key' => 'your-merchant-key',
        'cert_path' => 'your-cert-path',
        'key_path' => 'your-key-path',
        'notify_url' => 'your-notify-url',
    ],
];
Nach dem Login kopieren

其中,app_id是微信小程序的App ID,mch_id是商户号,key是商户密钥,cert_pathkey_path是商户证书的路径,notify_url是支付结果通知的URL。

五、创建支付订单

使用EasyWeChat可以很方便地创建微信支付订单。下面是一个示例代码:

$payment = Factory::payment(config('wechat.mini_program'));

$result = $payment->order->unify([
    'body' => '商品描述',
    'out_trade_no' => '商户订单号',
    'total_fee' => '订单总金额',
    'spbill_create_ip' => request()->ip(),
    'trade_type' => 'JSAPI',
    'openid' => '用户的openid',
]);

if ($result['return_code'] === 'SUCCESS' && $result['result_code'] === 'SUCCESS') {
    $prepayId = $result['prepay_id'];

    // JSAPI支付需要的参数
    $config = $payment->jssdk->sdkConfig($prepayId);

    // 将$config返回给前端,用于调起微信支付
} else {
    // 创建订单失败的处理逻辑
}
Nach dem Login kopieren

在上述代码中,order->unify方法用于创建订单,其中body是商品描述,out_trade_no是商户订单号,total_fee是订单总金额,spbill_create_ip是用户的IP地址,trade_type是支付方式,openid是用户的openid。如果订单创建成功,则可以获取到prepay_id,将其用于后续的支付操作。

六、调起微信支付

在前端小程序中调起微信支付非常简单,只需要在需要进行支付的地方调用wx.requestPayment方法,传入支付所需的参数即可。以下是一个示例代码:

wx.requestPayment({
  'timeStamp': '时间戳',
  'nonceStr': '随机字符串',
  'package': 'prepay_id=prepay_id',
  'signType': 'MD5',
  'paySign': '签名',
  'success': function (res) {
     // 支付成功的处理逻辑
  },
  'fail': function (res) {
     // 支付失败的处理逻辑
  }
})
Nach dem Login kopieren

在上述代码中,timeStamp是时间戳,nonceStr是随机字符串,packageprepay_id=prepay_idsignType是签名类型,paySign是签名。

七、处理支付结果通知

在用户完成支付后,微信会通过异步通知的方式将支付结果通知给开发者服务器。开发者需要保证服务器能够正常接收到支付结果通知。以下是一个处理支付结果通知的示例代码:

$payment = Factory::payment(config('wechat.mini_program'));

$response = $payment->handlePaidNotify(function ($notify, $successful) {
    // 处理支付结果通知的逻辑

    return true;
});

return $response;
Nach dem Login kopieren

在上述代码中,handlePaidNotify方法用于处理支付结果通知,其中$notify参数是微信支付通知的内容,$successfulrrreee

Darunter app_id code> ist die App-ID des WeChat-Applets, <code>mch_id ist die Händlernummer, key ist der Händlerschlüssel, cert_path und key_path code> ist der Pfad zum Händlerzertifikat und notify_url ist die URL der Zahlungsergebnisbenachrichtigung.

5. Erstellen Sie einen Zahlungsauftrag🎜🎜Mit EasyWeChat können Sie ganz einfach einen WeChat-Zahlungsauftrag erstellen. Hier ist ein Beispielcode: 🎜rrreee🎜Im obigen Code wird die Methode order->unify verwendet, um eine Bestellung zu erstellen, wobei body die Produktbeschreibung und out_trade_no ist die Bestellnummer des Händlers, total_fee ist der Gesamtbestellbetrag, spbill_create_ip ist die IP-Adresse des Benutzers, trade_type ist die Zahlungsmethode, openid ist die openid des Benutzers. Wenn die Bestellung erfolgreich erstellt wurde, können Sie prepay_id erhalten und für nachfolgende Zahlungsvorgänge verwenden. 🎜🎜6. WeChat Payment aktivieren🎜🎜Es ist sehr einfach, WeChat Payment im Frontend-Applet zu aktivieren. Sie müssen nur die Methode wx.requestPayment aufrufen, wo die Zahlung erforderlich ist, und die Parameter übergeben zur Bezahlung erforderlich. Das Folgende ist ein Beispielcode: 🎜rrreee🎜Im obigen Code ist timeStamp der Zeitstempel, nonceStr ist eine zufällige Zeichenfolge und package ist prepay_id=prepay_id, signType ist der Signaturtyp und paySign ist die Signatur. 🎜🎜7. Zahlungsergebnisbenachrichtigungen werden verarbeitet🎜🎜Nachdem der Benutzer die Zahlung abgeschlossen hat, benachrichtigt WeChat den Entwicklerserver durch eine asynchrone Benachrichtigung über die Zahlungsergebnisse. Entwickler müssen sicherstellen, dass der Server normalerweise Benachrichtigungen über Zahlungsergebnisse empfangen kann. Das Folgende ist ein Beispielcode für die Verarbeitung von Zahlungsergebnisbenachrichtigungen: 🎜rrreee🎜Im obigen Code wird die Methode handlePaidNotify zum Verarbeiten von Zahlungsergebnisbenachrichtigungen verwendet, wobei der Parameter $notify verwendet wird ist die WeChat-Zahlungsbenachrichtigung. Der Parameter $successful gibt an, ob die Zahlung erfolgreich war. Entwickler müssen in dieser Rückruffunktion ihre eigene Geschäftslogik implementieren, z. B. die Aktualisierung des Bestellstatus usw. 🎜🎜Durch die oben genannten Schritte können wir EasyWeChat und PHP verwenden, um die WeChat-Zahlungsfunktion des WeChat-Applets zu entwickeln. Ich hoffe, dass dieser Leitfaden Entwicklern dabei helfen kann, die WeChat-Zahlungsfunktion erfolgreich zu implementieren. 🎜

Das obige ist der detaillierte Inhalt vonImplementierungshandbuch für die WeChat-Zahlungsfunktion für die Entwicklung von WeChat-Miniprogrammen mit EasyWeChat und PHP. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

Video Face Swap

Video Face Swap

Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

PHP 8.4 Installations- und Upgrade-Anleitung für Ubuntu und Debian PHP 8.4 Installations- und Upgrade-Anleitung für Ubuntu und Debian Dec 24, 2024 pm 04:42 PM

PHP 8.4 bringt mehrere neue Funktionen, Sicherheitsverbesserungen und Leistungsverbesserungen mit einer beträchtlichen Menge an veralteten und entfernten Funktionen. In dieser Anleitung wird erklärt, wie Sie PHP 8.4 installieren oder auf PHP 8.4 auf Ubuntu, Debian oder deren Derivaten aktualisieren. Obwohl es möglich ist, PHP aus dem Quellcode zu kompilieren, ist die Installation aus einem APT-Repository wie unten erläutert oft schneller und sicherer, da diese Repositorys in Zukunft die neuesten Fehlerbehebungen und Sicherheitsupdates bereitstellen.

7 PHP-Funktionen, die ich leider vorher nicht kannte 7 PHP-Funktionen, die ich leider vorher nicht kannte Nov 13, 2024 am 09:42 AM

Wenn Sie ein erfahrener PHP-Entwickler sind, haben Sie möglicherweise das Gefühl, dass Sie dort waren und dies bereits getan haben. Sie haben eine beträchtliche Anzahl von Anwendungen entwickelt, Millionen von Codezeilen debuggt und eine Reihe von Skripten optimiert, um op zu erreichen

So richten Sie Visual Studio-Code (VS-Code) für die PHP-Entwicklung ein So richten Sie Visual Studio-Code (VS-Code) für die PHP-Entwicklung ein Dec 20, 2024 am 11:31 AM

Visual Studio Code, auch bekannt als VS Code, ist ein kostenloser Quellcode-Editor – oder eine integrierte Entwicklungsumgebung (IDE) –, die für alle gängigen Betriebssysteme verfügbar ist. Mit einer großen Sammlung von Erweiterungen für viele Programmiersprachen kann VS Code c

Erklären Sie JSON Web Tokens (JWT) und ihren Anwendungsfall in PHP -APIs. Erklären Sie JSON Web Tokens (JWT) und ihren Anwendungsfall in PHP -APIs. Apr 05, 2025 am 12:04 AM

JWT ist ein offener Standard, der auf JSON basiert und zur sicheren Übertragung von Informationen zwischen Parteien verwendet wird, hauptsächlich für die Identitätsauthentifizierung und den Informationsaustausch. 1. JWT besteht aus drei Teilen: Header, Nutzlast und Signatur. 2. Das Arbeitsprinzip von JWT enthält drei Schritte: Generierung von JWT, Überprüfung von JWT und Parsingnayload. 3. Bei Verwendung von JWT zur Authentifizierung in PHP kann JWT generiert und überprüft werden, und die Funktionen und Berechtigungsinformationen der Benutzer können in die erweiterte Verwendung aufgenommen werden. 4. Häufige Fehler sind Signaturüberprüfungsfehler, Token -Ablauf und übergroße Nutzlast. Zu Debugging -Fähigkeiten gehört die Verwendung von Debugging -Tools und Protokollierung. 5. Leistungsoptimierung und Best Practices umfassen die Verwendung geeigneter Signaturalgorithmen, das Einstellen von Gültigkeitsperioden angemessen.

Wie analysiert und verarbeitet man HTML/XML in PHP? Wie analysiert und verarbeitet man HTML/XML in PHP? Feb 07, 2025 am 11:57 AM

Dieses Tutorial zeigt, wie XML -Dokumente mit PHP effizient verarbeitet werden. XML (Extensible Markup-Sprache) ist eine vielseitige textbasierte Markup-Sprache, die sowohl für die Lesbarkeit des Menschen als auch für die Analyse von Maschinen entwickelt wurde. Es wird üblicherweise für die Datenspeicherung ein verwendet und wird häufig verwendet

PHP -Programm zum Zählen von Vokalen in einer Zeichenfolge PHP -Programm zum Zählen von Vokalen in einer Zeichenfolge Feb 07, 2025 pm 12:12 PM

Eine Zeichenfolge ist eine Folge von Zeichen, einschließlich Buchstaben, Zahlen und Symbolen. In diesem Tutorial wird lernen, wie Sie die Anzahl der Vokale in einer bestimmten Zeichenfolge in PHP unter Verwendung verschiedener Methoden berechnen. Die Vokale auf Englisch sind a, e, i, o, u und sie können Großbuchstaben oder Kleinbuchstaben sein. Was ist ein Vokal? Vokale sind alphabetische Zeichen, die eine spezifische Aussprache darstellen. Es gibt fünf Vokale in Englisch, einschließlich Großbuchstaben und Kleinbuchstaben: a, e, ich, o, u Beispiel 1 Eingabe: String = "TutorialPoint" Ausgabe: 6 erklären Die Vokale in der String "TutorialPoint" sind u, o, i, a, o, ich. Insgesamt gibt es 6 Yuan

Erklären Sie die späte statische Bindung in PHP (statisch: :). Erklären Sie die späte statische Bindung in PHP (statisch: :). Apr 03, 2025 am 12:04 AM

Statische Bindung (statisch: :) implementiert die späte statische Bindung (LSB) in PHP, sodass das Aufrufen von Klassen in statischen Kontexten anstatt Klassen zu definieren. 1) Der Analyseprozess wird zur Laufzeit durchgeführt.

Was sind PHP Magic -Methoden (__construct, __Destruct, __call, __get, __set usw.) und geben Sie Anwendungsfälle an? Was sind PHP Magic -Methoden (__construct, __Destruct, __call, __get, __set usw.) und geben Sie Anwendungsfälle an? Apr 03, 2025 am 12:03 AM

Was sind die magischen Methoden von PHP? Zu den magischen Methoden von PHP gehören: 1. \ _ \ _ Konstrukt, verwendet, um Objekte zu initialisieren; 2. \ _ \ _ Destruct, verwendet zur Reinigung von Ressourcen; 3. \ _ \ _ Call, behandeln Sie nicht existierende Methodenaufrufe; 4. \ _ \ _ GET, Implementieren Sie den dynamischen Attributzugriff; 5. \ _ \ _ Setzen Sie dynamische Attributeinstellungen. Diese Methoden werden in bestimmten Situationen automatisch aufgerufen, wodurch die Code -Flexibilität und -Effizienz verbessert werden.

See all articles