Nafezly Payments 项目使用教程
1. 项目目录结构及介绍
payments/
├── config/
│ ├── config.php
│ └── resources/
├── src/
│ ├── Classes/
│ ├── Factories/
│ └── ...
├── .gitignore
├── LICENSE
├── README.md
├── composer.json
├── composer.lock
├── gateways.jpg
└── payment-gateways.jpg
目录结构说明
- config/: 包含项目的配置文件和资源文件。
- config.php: 主要的配置文件,定义了各种支付网关的配置参数。
- resources/: 可能包含语言文件或其他资源文件。
- src/: 项目的核心代码目录。
- Classes/: 包含各种支付网关的具体实现类。
- Factories/: 包含工厂类,用于创建支付网关实例。
- .gitignore: Git 忽略文件列表。
- LICENSE: 项目许可证文件。
- README.md: 项目说明文档。
- composer.json: Composer 依赖管理文件。
- composer.lock: Composer 锁定文件,记录了依赖的具体版本。
- gateways.jpg 和 payment-gateways.jpg: 可能包含支付网关的图示或说明图片。
2. 项目的启动文件介绍
在 src/
目录下,项目的启动文件通常是 Classes/
目录中的某个文件,例如 PaymobPayment.php
。这个文件包含了支付网关的具体实现逻辑。
示例代码
use Nafezly\Payments\Classes\PaymobPayment;
$payment = new PaymobPayment();
$payment->pay(
$amount,
$user_id = null,
$user_first_name = null,
$user_last_name = null,
$user_email = null,
$user_phone = null,
$source = null
);
说明
- PaymobPayment: 这是一个具体的支付网关类,用于处理 Paymob 支付。
- pay(): 这是支付方法,用于发起支付请求。
3. 项目的配置文件介绍
项目的配置文件位于 config/config.php
,包含了各种支付网关的配置参数。
配置文件示例
return [
#PAYMOB
'PAYMOB_API_KEY' => env('PAYMOB_API_KEY'),
'PAYMOB_INTEGRATION_ID' => env('PAYMOB_INTEGRATION_ID'),
'PAYMOB_IFRAME_ID' => env('PAYMOB_IFRAME_ID'),
'PAYMOB_HMAC' => env('PAYMOB_HMAC'),
'PAYMOB_CURRENCY' => env('PAYMOB_CURRENCY', "EGP"),
#HYPERPAY
'HYPERPAY_BASE_URL' => env('HYPERPAY_BASE_URL', "https://eu-test.oppwa.com"),
'HYPERPAY_URL' => env('HYPERPAY_URL', env('HYPERPAY_BASE_URL') . "/v1/checkouts"),
'HYPERPAY_TOKEN' => env('HYPERPAY_TOKEN'),
'HYPERPAY_CREDIT_ID' => env('HYPERPAY_CREDIT_ID'),
'HYPERPAY_MADA_ID' => env('HYPERPAY_MADA_ID'),
'HYPERPAY_APPLE_ID' => env('HYPERPAY_APPLE_ID'),
'HYPERPAY_CURRENCY' => env('HYPERPAY_CURRENCY', "SAR"),
// 其他支付网关的配置...
];
说明
- PAYMOB: Paymob 支付网关的配置参数。
- HYPERPAY: Hyperpay 支付网关的配置参数。
- env(): 从环境变量中读取配置值,如果没有设置,则使用默认值。
通过以上配置,项目可以灵活地支持多种支付网关,并根据需要进行配置。