မိုဘိုင်းငွေပေးချေမှုနှင့်အွန်လိုင်းငွေပေးချေမှု၏လူကြိုက်များမှုနှင့်အတူ၎င်းသည်အီလက်ထရောနစ်ငွေပေးချေမှုနှင့်ချိတ်ဆက်ရန်ဝက်ဘ်ဆိုက်များနှင့် applications များအတွက်ပုံမှန်ဖြစ်လာသည်။ စွမ်းဆောင်ရည်ရှိသည့် PHP Development မူဘောင်တွင် Yii သည်တတိယပါတီငွေပေးချေမှုမျက်နှာပြင်ကိုလျင်မြန်စွာပေါင်းသင်းရန်အတွက်သင့်လျော်သောပြောင်းလွယ်ပြင်လွယ်သောချဲ့ထွင်မှုနည်းလမ်းများဖြင့် developer များကိုထောက်ပံ့ပေးသည်။ ဤဆောင်းပါးသည်ကန ဦး မှ စတင်. YII မူဘောင်ပေါ် မူတည်. အီလက်ထရောနစ်ငွေပေးချေမှုလုပ်ငန်းများဖွံ့ဖြိုးတိုးတက်မှုအားဖြင့်သင့်ကိုခေါ်ဆောင်သွားပါမည်။
ပထမ ဦး စွာ YII တပ်ဆင်ထားပြီး app အသစ်တစ်ခုဖန်တီးရန်အဆင်သင့်ရှိကြောင်းသေချာပါစေ။ စီမံကိန်းတည်ဆောက်ပုံကိုလျင်မြန်စွာတည်ဆောက်ရန်အောက်ပါ command များကို command line မှတဆင့် run ပါ။
yii startapp payment
စီမံကိန်းကိုဖန်တီးပြီးနောက်ငွေပေးချေမှုယုတ္တိဗေဒကိုကိုင်တွယ်ရန် Controller ကိုထည့်ပါ။
yii generate/controller PaymentController
YII အက်ပလီကေးရှင်း၏ configuration file (များသောအားဖြင့် config / main.php ) တွင်အောက်ပါချိန်ညှိချက်များကိုထည့်ပါ။
'paymentGateway' => [
'class' => 'app\components\PaymentGateway',
'apiKey' => 'YOUR_API_KEY',
'apiUrl' => 'https://api.paymentgateway.com/pay',
],
API keys နှင့်ငွေပေးချေမှု interface လိပ်စာများအပါအ 0 င်ထုံးစံအတိုင်းငွေပေးချေမှုအစိတ်အပိုင်းများကိုအစပိုင်းတွင်ဤ configuration ကိုအသုံးပြုသည်။ အသုံးပြုသောအခါ 0 န်ဆောင်မှုပေးသူမှပေးသော parameters တွေကိုအလိုက်ပြုပြင်သင့်သည်။
paymonents directory တွင် ငွေပေးချေမှု အသစ်တစ်ခုကို ဖန်တီး. အောက်ပါအတန်းအစားကိုသတ်မှတ်ပါ။
<?php
namespace app\components;
use Yii;
use yii\base\Component;
use yii\base\InvalidConfigException;
class PaymentGateway extends Component
{
public $apiKey;
public $apiUrl;
public function init()
{
parent::init();
if ($this->apiKey === null) {
throw new InvalidConfigException('The "apiKey" property must be set.');
}
if ($this->apiUrl === null) {
throw new InvalidConfigException('The "apiUrl" property must be set.');
}
}
public function processPayment($amount, $cardNumber, $cardExpiry)
{
// ငွေပေးချေမှုတောင်းဆိုမှုများပေးပို့ခြင်းအတွက်ယုတ္တိဗေဒ
// အမှန်တကယ်တောင်းဆိုမှုနှင့်တုန့်ပြန်မှုအပြောင်းအလဲများသည်သီးခြားတံခါးပေါက်အရအကောင်အထည်ဖော်သည်
}
}
ဤအစိတ်အပိုင်းသည်ငွေပေးချေမှုဂိတ်နှင့် အပြန်အလှန် ဆက်သွယ်မှုအတွက်တာ 0 န်ရှိသည်။
ထို့နောက်ငွေပေးချေမှုတောင်းဆိုမှုများအတွက်ယုတ္တိဗေဒကိုထည့်သွင်းရန်ငွေပေးချေမှုကိုထည့်သွင်းရန် ငွေပေးချေမှုကို ပြင်ဆင်ရန် -
<?php
namespace app\controllers;
use Yii;
use yii\web\Controller;
use app\components\PaymentGateway;
class PaymentController extends Controller
{
public function actionProcess($amount, $cardNumber, $cardExpiry)
{
$paymentGateway = Yii::$app->paymentGateway;
try {
$response = $paymentGateway->processPayment($amount, $cardNumber, $cardExpiry);
// အောင်မြင်သောငွေပေးချေမှုပြီးနောက်စီးပွားရေးအပြောင်းအလဲနဲ့
} catch (\Exception $e) {
// ငွေပေးချေမှုပျက်ကွက်ခြင်းယုတ္တိဗေဒ
Yii::error($e->getMessage());
}
}
}
Configuration တွင် ငွေပေးချေမှုဆိုင်ရာ အစိတ်အပိုင်းကိုထိုးသွင်းခြင်းအားဖြင့်ငွေပေးချေမှုတောင်းဆိုခြင်းနှင့်ခြွင်းချက်ဆိုင်ရာဖမ်းယူမှုကိုအကောင်အထည်ဖော်သည်။
ငွေပေးချေမှုထိန်းချုပ်သူကိုဖော်ရွေသော URL မှတစ်ဆင့်လက်လှမ်းမီရန်အတွက်လမ်းကြောင်းစည်းမျဉ်းများကိုပြင်ဆင်ရန်လိုအပ်သည်။
'urlManager' => [
'enablePrettyUrl' => true,
'showScriptName' => false,
'rules' => [
'payment/process/<amount:\d+>/<cardNumber:\d+>/<cardExpiry:\d+>' => 'payment/process',
],
],
ဤလမ်းကြောင်းစည်းမျဉ်းသည် URL များကို / ငွေပေးချေခြင်း, လုပ်ငန်းစဉ် / 100/12345678901234566/1225/1225 သို့ရောက်ရှိမည့် Controllolder နှင့်လုပ်ဆောင်မှုနည်းလမ်းများအတွက် URL များကိုမြေပုံရေးဆွဲလိမ့်မည်။
အထက်ပါအဆင့်များမှတစ်ဆင့် YII မူဘောင်တွင်အီလက်ထရောနစ်ငွေပေးချေမှုလုပ်ငန်းများကိုပေါင်းစပ်ခြင်း၏အခြေခံဖွံ့ဖြိုးတိုးတက်မှုလုပ်ငန်းစဉ်ကိုသင်ပြီးစီးပါပြီ။ အနာဂတ်တွင်အမှန်တကယ်စီမံကိန်းလိုအပ်ချက်များအရငွေပေးချေမှုအမျိုးမျိုး, လုံခြုံရေးအတည်ပြုခြင်း, ငွေပေးချေခြင်း, ငွေပေးချေခြင်း, ငွေပေးချေခြင်း,
အမှန်တကယ်ထုတ်လုပ်မှုပတ် 0 န်းကျင်တွင်ငွေပေးချေမှုသတင်းအချက်အလက်ထုတ်လွှင့်ခြင်းလုပ်ငန်းသည် HTTPS ကိုချမှတ်ကြောင်းသေချာစွာစစ်ဆေးပါ။
YII စီမံကိန်းတွင်အီလက်ထရောနစ်ငွေပေးချေမှုကိုနားလည်သဘောပေါက်ရန်ဤသင်ခန်းစာသည်သင့်အတွက်အထောက်အကူဖြစ်လိမ့်မည်ဟုကျွန်ုပ်မျှော်လင့်ပါသည်။