irfa / raja-ongkir
"Laravel Raja Ongkir Package"
v1.33
2020-06-03 08:08 UTC
Requires
- php: ^7.2
This package is auto-updated.
Last update: 2024-09-21 18:31:29 UTC
README
此包用于检查快递运费,此包可用于Laravel 5/6/7或PHP原生。 (目前仅支持入门级账户类型)
🛠️ 使用Composer安装
composer require irfa/raja-ongkir
您可以从这里获取Composer
🛠️ PHP原生设置
<?php require "vendor/autoload.php"; use Irfa\RajaOngkir\Ongkir\Ongkir as RajaOngkir; ....
配置文件
配置位置: vendor/irfa/raja-ongkir/config/config.php
<?php $config = [ 'account_type' => 'your-account-type', 'api_key' => 'your-api-key', ];
您可以在Raja Ongkir 获取API密钥。
支持的账户类型:入门级。
🛠️ Laravel设置
添加到config/app.php
'providers' => [ .... Irfa\RajaOngkir\RajaOngkirServiceProvider::class, ];
添加到config/app.php
'aliases' => [ .... 'RajaOngkir' => Irfa\RajaOngkir\Facades\Ongkir::class, ],
发布供应商
php artisan vendor:publish --tag=raja-ongkir
打开.env文件并添加以下行
....
RAJAONGKIR_ACCOUNT_TYPE=starter
RAJAONGKIR_API_KEY=your-api-key
RAJAONGKIR_PROV_TABLE=ro_province
RAJAONGKIR_CITY_TABLE=ro_city
RAJAONGKIR_CACHE=database
🚀 缓存
缓存可以加快加载城市和省份的速度🚀。
您可以在config/irfa/rajaongkir.php或project_name/.env中更改缓存类型。
此功能目前仅支持Laravel框架
支持的缓存类型:数据库和文件
(如果您不想使用缓存,可以将它设置为null)
迁移城市和省份表
如果您想使用数据库缓存,您必须先运行迁移。
php artisan migrate
缓存省份、区县和城市
打开控制台/cmd并运行
php artisan raja-ongkir:cache all
缓存城市
打开控制台/cmd并运行
php artisan raja-ongkir:cache city
缓存省份
打开控制台/cmd并运行
php artisan raja-ongkir:cache province
清除缓存
打开控制台/cmd并运行
php artisan raja-ongkir:cache clear
刷新缓存
清除旧缓存并创建最新缓存。
打开控制台/cmd并运行
php artisan raja-ongkir:cache refresh
💻 使用方法
use RajaOngkir;
检索所有省份
$get = RajaOngkir::province()->get(); foreach($get as $prov) { echo $prov->province_id."<br>"; // value = 1 echo $prov->province."<br>";// value = Bali }
搜索省份
$get = RajaOngkir::find(['province_id' => 1])->province()->get(); echo $get->province_id."<br>"; // value = 1 echo $get->province."<br>";// value = Bali
检索所有城市
$get = RajaOngkir::city()->get(); foreach($get as $city) { echo $city->city_id."<br>"; // value = 17 echo $city->province_id."<br>";// value = 1 echo $city->province."<br>";// value = Bali echo $city->type."<br>"; // value = Kabupaten echo $city->city_name."<br>"; // value = Badung echo $city->postal_code."<br>"; // value = 80351 }
检索省份内的所有城市
$get = RajaOngkir::find(['province_id' => 1])->city()->get(); foreach($get as $city){ echo $city->city_id."<br>"; // value = 17 echo $city->province_id."<br>";// value = 1 echo $city->province."<br>";// value = Bali echo $city->type."<br>"; // value = Kabupaten echo $city->city_name."<br>"; // value = Badung echo $city->postal_code."<br>"; // value = 80351 }
检索快递
$get = RajaOngkir::find(['origin'=>1,'destination'=>2,'weight'=>1000,'courier' => 'jne']) ->courier()->get(); foreach($get as $city) { echo $city->code."<br>"; // value = jne echo $city->name."<br>";// value = Jalur Nugraha Ekakurir (JNE) }
检索快递费用
$params = ['origin'=>1,'destination'=>2,'weight'=>1000,'courier' => 'jne' ]; $get = RajaOngkir::find($params)->costDetails()->get(); foreach($get as $cost) { echo "Courier Name: ".$cost->service."<br>"; echo "Description: ".$cost->description."<br>"; foreach($cost->cost as $detail) { echo "Harga: ".$detail->value."<br>"; echo "Estimasi: ".$detail->etd."<br>"; echo "Note: ".$detail->note."<br>"; echo "<hr>"; } }
如何贡献?
- 分支它 (https://github.com/irfaardy/raja-ongkir/fork)
- 提交您的更改 (
git commit -m 'New Feature'
) - 将更改推送到分支 (
git push origin master
) - 创建新的拉取请求
如果您发现错误或问题,请在此处发布 https://github.com/irfaardy/raja-ongkir/issues,以便它们可以一起维护。
如何贡献?
- 在(https://github.com/irfaardy/raja-ongkir/fork)进行分支
- 提交您所做的更改 (
git commit -m 'Fitur Baru'
) - 将更改推送到master分支 (
git push origin master
) - 创建新的拉取请求
问题
如果您发现问题或错误,请在此处创建新问题 https://github.com/irfaardy/php-gacha/issues/new
如果您发现错误或问题,请在此处发布 https://github.com/irfaardy/raja-ongkir/issues,以便它们可以一起修复。