denisneuf / thinkphp-paypal-api
A ThinkPHP wrapper for using PayPal Rest API
Requires
- php: >=7.2.5
- ext-curl: *
README
ThinkPHP Paypal Api
A library to support Paypal Rest API from ThinkPHP framework.
INSTALL
First Install your ThinkPHP project:
The operating environment of ThinkPHP6.1 requires PHP7.2.5+, with a maximum compatibility of PHP8.2
INSTALL THINKPHP WITH COMPOSER
composer create-project topthink/think tp
Init service
cd tp
php think run
You can then access it in a browser
http://localhost:8000
If the framework needs to be updated
composer update topthink/framework
REQUIRE THINKPHP-PAYPAL-API
composer require denisneuf/thinkphp-paypal-api
Run an update to install the package
composer update
USE IT IN YOUR CONTROLLER
<?php declare (strict_types = 1); namespace app\controller; use app\BaseController; use think\facade\Env; use think\facade\View; use think\Request; use think\Log; use PayPalSdk\Core\PayPalClient; use PayPalSdk\disputes\DisputesGetRequest; use PayPalHttp\HttpException; class YourController extends BaseController { /** * 显示资源列表 * * @return \think\Response */ public function index(Log $log) { $request = new DisputesGetRequest(); try{ $client = PayPalClient::client(); $response = $client->execute($request); } catch(HttpException $exception){ $message = json_decode($exception->getMessage(), true); dump($message); exit; } finally { $log->info(gettype($response->result->items)); } View::assign('title','View Disputes'); View::assign('lang', Env::get('lang.default_lang')); View::assign('description','View Disputes'); View::assign('list', $response->result->items); return View::fetch('admin/list/dispute'); } }
SET UP
Create or edit your .env file and put in the root of your thinkphp project ( SANDBOX or PRODUCTION )
# environment variables defined inside a .env file
[PAYPAL]
#SandBox LeadTech
client_id = "your-client-id-sandbox"
client_secret = "your-client-secret-sandbox"
#Production LeadTech
#client_id = "your-client-id-production"
#client_secret = "your-client-secret-production"
#client_environment = "PRODUCTION"
THINKPHP INTEGRATION
This library uses Cache and Env from ThinkPHP framework.
use think\facade\Cache;
To store the token in the ThinkPHP Cache
use think\facade\Env;
To obtain the credentials from ThinkPHP Env
use \think\facade\Filesystem; To upload files from ThinkPHP Filesystem
DISCLAIMER
This package is based on paypal/paypal-checkout-sdk has been archived by the owner on Jul 21, 2022. It is now read-only.
We are not affiliated with PayPal.