PHP 프레임워크 Swoole WeChat 결제에 Hyperf 프레임워크를 사용하는 방법

WeChat 결제에 Hyperf 프레임워크를 사용하는 방법

Oct 20, 2023 pm 05:24 PM
사용 위챗페이 하이퍼프 프레임워크

WeChat 결제에 Hyperf 프레임워크를 사용하는 방법

WeChat 결제에 Hyperf 프레임워크 사용

소개:
전자상거래가 발전하면서 WeChat 결제는 사람들이 일상 생활에서 쇼핑하고 결제하는 주요 방법 중 하나가 되었습니다. 개발 중에는 WeChat 결제를 신속하게 통합하는 방법이 특히 중요합니다. 이 기사에서는 WeChat 결제를 위해 Hyperf 프레임워크를 사용하는 방법을 소개하고 구체적인 코드 예제를 제공합니다.

텍스트:

1. 준비
WeChat 결제를 위해 Hyperf 프레임워크를 사용하기 전에 몇 가지 준비가 필요합니다. 먼저 위챗 결제 계정을 등록하고 가맹점 번호, 애플리케이션 키 및 기타 정보를 얻으세요. 둘째, Hyperf 프레임워크를 설치하려면 Composer를 사용하여 설치하고 작곡가 create-project hyperf/hyperf-skeleton 명령을 실행할 수 있습니다. 마지막으로 WeChat 결제 SDK 라이브러리를 설치하고 Composer를 사용하여 다음 명령을 실행할 수 있습니다.

2. 구성 파일
Hyperf 프레임워크에서 구성 파일은 config/autoload 디렉터리에 있습니다. 구성 파일에 판매자 번호, 애플리케이션 키 등을 포함하여 WeChat 결제와 관련된 구성 항목을 올바르게 입력하십시오. 샘플 구성은 다음과 같습니다.

return [
    'wechat' => [
        'app_id' => env('WECHAT_APPID', ''),
        'mch_id' => env('WECHAT_MCH_ID', ''),
        'key' => env('WECHAT_KEY', ''),
        'cert_path' => env('WECHAT_CERT_PATH',''),
        'key_path' => env('WECHAT_KEY_PATH',''),
        'notify_url' => env('WECHAT_NOTIFY_URL',''),
    ],
];
로그인 후 복사

3. WeChat 결제 서비스 클래스 생성
Hyperf 프레임워크에서는 WeChat 결제 서비스 클래스를 생성하여 결제 관련 방법을 캡슐화할 수 있습니다. 샘플 코드는 다음과 같습니다.

<?php

declare(strict_types=1);

namespace AppService;

use EasyWeChatPaymentApplication;

class WechatPayService
{
    protected $app;

    public function __construct()
    {
        $config = config('wechat');
        $this->app = new Application($config);
    }

    public function createOrder(string $orderNo, float $totalAmount, string $description)
    {
        $result = $this->app->order->unify([
            'out_trade_no' => $orderNo,
            'body' => $description,
            'total_fee' => $totalAmount * 100,
            'trade_type' => 'APP',
        ]);

        if ($result['return_code'] === 'SUCCESS' && $result['result_code'] === 'SUCCESS') {
            $prepayId = $result['prepay_id'];
            $jssdkParams = $this->app->jssdk->appConfig($prepayId);

            return [
                'prepay_id' => $result['prepay_id'],
                'jssdk_params' => $jssdkParams,
            ];
        } else {
            throw new Exception($result['return_msg']);
        }
    }

    public function notify(array $data)
    {
        $response = $this->app->handlePaidNotify(function ($message, $fail) {
            // 处理支付回调
            // 更新订单状态,发货等操作
            return true; // 返回处理结果, true 或 false
        });

        return $response;
    }
}
로그인 후 복사

4. 결제 인터페이스 호출
WeChat 결제를 호출해야 하는 곳마다 WeChat 결제 서비스 클래스를 인스턴스화하고 해당 메서드를 호출합니다. 샘플 코드는 다음과 같습니다.

<?php

declare(strict_types=1);

namespace AppController;

use AppServiceWechatPayService;
use HyperfHttpServerAnnotationController;
use HyperfHttpServerAnnotationPostMapping;
use HyperfHttpServerContractRequestInterface;

/**
 * @Controller()
 */
class PayController
{
    /**
     * @PostMapping(path="/pay")
     */
    public function pay(RequestInterface $request, WechatPayService $payService)
    {
        $orderNo = $request->input('orderNo');
        $totalAmount = $request->input('totalAmount');
        $description = $request->input('description');

        try {
            $result = $payService->createOrder($orderNo, $totalAmount, $description);
            // 返回给前端APP的支付参数
            return $result;
        } catch (Exception $e) {
            // 处理异常错误
            return [
                'error' => $e->getMessage(),
            ];
        }
    }

    /**
     * @PostMapping(path="/notify")
     */
    public function notify(RequestInterface $request, WechatPayService $payService)
    {
        $payService->notify($request->all());
        // 处理支付回调结果

        return 'success';
    }
}
로그인 후 복사

5. 라우팅을 구성합니다.
라우팅을 구성하고 결제 인터페이스와 콜백 인터페이스를 해당 컨트롤러 메서드에 바인딩합니다. 샘플 코드는 다음과 같습니다.

<?php

declare(strict_types=1);

use HyperfHttpServerRouterRouter;

Router::addRoute(['POST'], '/pay', 'App\Controller\PayController@pay');
Router::addRoute(['POST'], '/notify', 'App\Controller\PayController@notify');
로그인 후 복사

요약:
이 글에서는 WeChat 결제를 위해 Hyperf 프레임워크를 사용하는 방법을 소개하고 구체적인 코드 예제를 제공합니다. 구성 파일을 통해 WeChat 결제 관련 매개 변수를 설정하고 WeChat 결제 서비스 클래스를 생성하면 쉽게 결제 인터페이스를 호출하고 결제 결과를 콜백할 수 있습니다. 이 글이 개발 과정에서 위챗페이를 통합하는 개발자들에게 도움이 되기를 바랍니다.

위 내용은 WeChat 결제에 Hyperf 프레임워크를 사용하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

AI Hentai Generator

AI Hentai Generator

AI Hentai를 무료로 생성하십시오.

인기 기사

R.E.P.O. 에너지 결정과 그들이하는 일 (노란색 크리스탈)
2 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 최고의 그래픽 설정
2 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 아무도들을 수없는 경우 오디오를 수정하는 방법
3 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌

뜨거운 도구

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

WeChat 결제 비밀번호를 잊어버린 경우 어떻게 찾을 수 있나요? WeChat 결제 비밀번호를 잊어버린 경우 어떻게 찾을 수 있나요? Feb 23, 2024 pm 09:40 PM

WeChat에서 사용자는 결제 비밀번호를 입력하여 구매할 수 있습니다. 하지만 결제 비밀번호를 잊어버린 경우 어떻게 검색할 수 있나요? 사용자는 결제 비밀번호를 잊어버린 경우 내 서비스 - 지갑 - 결제 설정으로 이동하여 결제 비밀번호를 복구해야 합니다. 결제 비밀번호를 잊어버린 경우, 비밀번호를 찾는 방법에 대한 구체적인 운영 방법은 다음과 같습니다. 자세히 살펴보세요. WeChat 사용 튜토리얼 WeChat 결제 비밀번호를 찾는 방법 답변: 내-서비스-지갑-결제 설정-결제 비밀번호 찾기: 1. 먼저 내를 클릭하세요. 2. 내부의 서비스를 클릭하세요. 3. 안에 있는 지갑을 클릭하세요. 4. 결제 설정을 찾으세요. 5. 결제 비밀번호 찾기를 클릭하세요. 6. 확인을 위해 본인의 정보를 입력하세요. 7. 그런 다음 새 결제 비밀번호를 입력하여 변경하세요.

Meituan 테이크아웃을 위한 WeChat 결제 설정 방법 WeChat 결제 설정 방법 Meituan 테이크아웃을 위한 WeChat 결제 설정 방법 WeChat 결제 설정 방법 Mar 12, 2024 pm 10:34 PM

메이투안 테이크아웃 앱에는 다양한 음식 및 스낵 상점이 제공되며, 모든 휴대폰 사용자는 자신의 계정을 통해 로그인합니다. 개인 배달 주소와 연락처를 추가해 가장 편리한 테이크아웃 서비스를 즐겨보세요. 소프트웨어 홈페이지를 열고, 제품 키워드를 입력하고, 온라인으로 검색하여 해당 제품 결과를 찾으세요. 플랫폼은 제공된 배송 주소를 기반으로 리뷰가 높은 인근 레스토랑 수십 곳을 추천해 드립니다. 매장에서는 다양한 결제 방법을 설정할 수도 있으며, 한 번의 클릭으로 주문을 완료할 수 있으며, 라이더가 즉시 배송을 준비할 수 있으며, 다양한 종류의 테이크아웃 빨간 봉투도 있습니다. 이제 Meituan 테이크아웃 사용자를 위해 편집기가 온라인에 자세히 설명되어 있습니다. 1. 상품 선택 후 주문하기 클릭

크리스탈디스크마크란 어떤 소프트웨어인가요? -크리스탈디스크마크는 어떻게 사용하나요? 크리스탈디스크마크란 어떤 소프트웨어인가요? -크리스탈디스크마크는 어떻게 사용하나요? Mar 18, 2024 pm 02:58 PM

CrystalDiskMark는 순차 및 무작위 읽기/쓰기 속도를 빠르게 측정하는 하드 드라이브용 소형 HDD 벤치마크 도구입니다. 다음으로 편집자님에게 CrystalDiskMark 소개와 crystaldiskmark 사용법을 소개하겠습니다~ 1. CrystalDiskMark 소개 CrystalDiskMark는 기계식 하드 드라이브와 솔리드 스테이트 드라이브(SSD)의 읽기 및 쓰기 속도와 성능을 평가하는 데 널리 사용되는 디스크 성능 테스트 도구입니다. ). 무작위 I/O 성능. 무료 Windows 응용 프로그램이며 사용자 친화적인 인터페이스와 다양한 테스트 모드를 제공하여 하드 드라이브 성능의 다양한 측면을 평가하고 하드웨어 검토에 널리 사용됩니다.

foobar2000을 어떻게 다운로드하나요? - foobar2000 사용법 foobar2000을 어떻게 다운로드하나요? - foobar2000 사용법 Mar 18, 2024 am 10:58 AM

foobar2000은 언제든지 음악 리소스를 들을 수 있는 소프트웨어입니다. 모든 종류의 음악을 무손실 음질로 제공합니다. 음악 플레이어의 향상된 버전을 사용하면 더욱 포괄적이고 편안한 음악 경험을 얻을 수 있습니다. 컴퓨터에서 고급 오디오를 재생합니다. 이 장치는 보다 편리하고 효율적인 음악 재생 경험을 제공합니다. 인터페이스 디자인은 단순하고 명확하며 사용하기 쉽습니다. 또한 다양한 스킨과 테마를 지원하고, 자신의 선호도에 따라 설정을 개인화하며, 다양한 오디오 형식의 재생을 지원하는 전용 음악 플레이어를 생성합니다. 또한 볼륨을 조정하는 오디오 게인 기능도 지원합니다. 과도한 볼륨으로 인한 청력 손상을 방지하려면 자신의 청력 상태에 따라 조정하십시오. 다음엔 내가 도와줄게

Xianyu는 WeChat으로 결제할 수 있나요? WeChat 결제 방법으로 변경하는 방법은 무엇인가요? Xianyu는 WeChat으로 결제할 수 있나요? WeChat 결제 방법으로 변경하는 방법은 무엇인가요? Mar 12, 2024 pm 12:19 PM

모두가 할 일이 없을 때 Xianyu 플랫폼을 탐색하면 누구나 이 플랫폼에 많은 제품이 있다는 것을 알 수 있으므로 모든 사람이 중고 제품을 볼 수 있습니다. 손으로 만든 제품은 품질에 전혀 문제가 없기 때문에 누구나 안심하고 구입할 수 있습니다. 가격도 매우 저렴하며, 여전히 모든 사람이 직접 이러한 제품을 접할 수 있습니다. 모든 사람이 적절하게 협상하면 거래를 선택할 수 있으며, 모두가 여기에서 결제할 때 WeChat 결제를 원하지만 플랫폼에서는 허용되지 않는 것 같습니다. 편집자는 구체적인 상황이 무엇인지 확인합니다. 시안위

Baidu Netdisk 앱 사용 방법 Baidu Netdisk 앱 사용 방법 Mar 27, 2024 pm 06:46 PM

오늘날 클라우드 스토리지는 우리의 일상 생활과 업무에 없어서는 안 될 부분이 되었습니다. 중국 최고의 클라우드 스토리지 서비스 중 하나인 Baidu Netdisk는 강력한 스토리지 기능, 효율적인 전송 속도 및 편리한 운영 경험으로 많은 사용자의 호감을 얻었습니다. 중요한 파일을 백업하고, 정보를 공유하고, 온라인으로 비디오를 시청하고, 음악을 듣고 싶은 경우 Baidu Cloud Disk는 귀하의 요구를 충족할 수 있습니다. 그러나 많은 사용자가 Baidu Netdisk 앱의 구체적인 사용 방법을 이해하지 못할 수 있으므로 이 튜토리얼에서는 Baidu Netdisk 앱 사용 방법을 자세히 소개합니다. Baidu 클라우드 네트워크 디스크 사용 방법: 1. 설치 먼저 Baidu Cloud 소프트웨어를 다운로드하고 설치할 때 사용자 정의 설치 옵션을 선택하십시오.

NetEase 메일박스 마스터를 사용하는 방법 NetEase 메일박스 마스터를 사용하는 방법 Mar 27, 2024 pm 05:32 PM

NetEase Mailbox는 중국 네티즌들이 널리 사용하는 이메일 주소로, 안정적이고 효율적인 서비스로 항상 사용자들의 신뢰를 얻어 왔습니다. NetEase Mailbox Master는 휴대폰 사용자를 위해 특별히 제작된 이메일 소프트웨어로 이메일 보내기 및 받기 프로세스를 크게 단순화하고 이메일 처리를 더욱 편리하게 만듭니다. 따라서 NetEase Mailbox Master를 사용하는 방법과 그 기능이 무엇인지 아래에서 이 사이트의 편집자가 자세한 소개를 제공하여 도움을 드릴 것입니다! 먼저, 모바일 앱스토어에서 NetEase Mailbox Master 앱을 검색하여 다운로드하실 수 있습니다. App Store 또는 Baidu Mobile Assistant에서 "NetEase Mailbox Master"를 검색한 후 안내에 따라 설치하세요. 다운로드 및 설치가 완료되면 NetEase 이메일 계정을 열고 로그인합니다. 로그인 인터페이스는 아래와 같습니다.

WeChat Pay로 환불을 신청하는 단계 공유 WeChat Pay로 환불을 신청하는 단계 공유 Mar 25, 2024 pm 06:31 PM

1. 먼저 휴대폰에서 WeChat 앱을 연 다음 클릭하여 WeChat 계정에 로그인하여 WeChat 홈페이지에 들어갑니다. 2. 위챗 홈페이지 우측 하단의 [나] 버튼을 클릭한 뒤, [결제] 옵션을 선택해 결제 페이지로 들어갑니다. 3. [결제] 페이지 진입 후 [지갑] 옵션을 클릭하여 진입한 후, [지갑] 페이지 우측 상단의 [청구서]를 클릭하세요.

See all articles