crossdunk / ecpay
此包最新版本(dev-master)无可用许可证信息。
ECPay for Laravel 5
dev-master
2018-07-04 08:30 UTC
This package is not auto-updated.
Last update: 2024-09-20 21:32:28 UTC
README
Ecpay - Laravel 5 版本
步骤 1 : 下载包
使用composer命令安装
composer require crossdunk/ecpay dev-master
或者在composer.json中添加包
"require": {
"crossdunk/ecpay": "dev-master"
},
然后更新安装
composer update
或全新安装
composer install
**步骤 2 : 修改配置文件**
在`config/app.php`的`providers`和`aliases`参数中添加
'aliases' => [ // ... 'Ecpay' => crossdunk\ECPay\Facade\Ecpay::class, ],
<br>
**step 3 : Publish config to your project**<br>
執行下列命令,將package的config檔配置到你的專案中
php artisan vendor:publish
可至config/ecpay.php中查看
預設是測試Ecpay設定
```php
return [
'ServiceURL' => env('PAY_SERVICE_URL', 'https://payment-stage.ecpay.com.tw/Cashier/AioCheckOut/V2'),
'HashKey' => env('PAY_HASH_KEY', '5294y06JbISpM5x9'),
'HashIV' => env('PAY_HASH_IV', 'v77hoKGq4kWxNNIS'),
'MerchantID' => env('PAY_MERCHANT_ID', '2000132'),
];
**步骤 4 : 在.env中添加参数**
```ini #付款测试 true : 直接使用测试的店铺参数, false : 使用config/ecpay.php中的参数. APP_PAY_TEST=true
PAY_SERVICE_URL=https://payment-stage.ecpay.com.tw/Cashier/AioCheckOut/V2 PAY_HASH_KEY=5294y06JbISpM5x9 PAY_HASH_IV=v77hoKGq4kWxNNIS PAY_MERCHANT_ID=2000132
---
### How To Use
```php
use Ecpay;
public function Demo() { //Official Example : //https://github.com/ECPay/ECPayAIO_PHP/blob/master/AioSDK/example/sample_Credit_CreateOrder.php //基本參數(請依系統規劃自行調整) Ecpay::i()->Send['ReturnURL'] = "http://www.ecpay.com.tw/receive.php" ; Ecpay::i()->Send['MerchantTradeNo'] = "Test".time() ; //訂單編號 Ecpay::i()->Send['MerchantTradeDate'] = date('Y/m/d H:i:s'); //交易時間 Ecpay::i()->Send['TotalAmount'] = 2000; //交易金額 Ecpay::i()->Send['TradeDesc'] = "good to drink" ; //交易描述 Ecpay::i()->Send['ChoosePayment'] = \ECPay_PaymentMethod::ALL ; //付款方式 //訂單的商品資料 array_push(Ecpay::i()->Send['Items'], array('Name' => "緑界黑芝麻豆漿", 'Price' => (int)"2000", 'Currency' => "元", 'Quantity' => (int) "1", 'URL' => "dedwed")); //Go to ECPay echo "緑界頁面導向中..."; echo Ecpay::i()->CheckOutString(); }
使用laravel开发时尽量使用CheckOutString()
返回String的方法
当然使用CheckOut()
也是可以的
但如果使用的话,可能后面会遇到获取不到特定Session的问题
//付款成功後緑界背景callback public function doneDemo(Request $request) { $arFeedback = Ecpay::i()->CheckOutFeedback($request->all()); print Ecpay::i()->getResponse($arFeedback); }
---
示例(本地主机)
示例链接: https:///[your-project]/public/ecpay_demo_201702
---