medhamza911 / fedex-laravel4
一个服务提供者,用于将FedEx服务集成到您的Laravel项目中
dev-master
2023-02-01 20:25 UTC
Requires
- laravel/framework: 4.*
- medhamza911/fedex-php: dev-master
- wsdltophp/packagebase: 2.2.3
This package is auto-updated.
Last update: 2024-09-30 00:33:39 UTC
README
这是Arkitecht/fedex-laravel的分支,对包进行了修改以支持向后兼容,以便支持Laravel 4.*。
快速安装
您可以通过Composer最方便地安装此包
Laravel 4.x
composer require krsman/fedex-laravel4
在您的项目中使用它
将服务提供者添加到您的config/app.php配置文件中
<?php ... 'providers' => array( 'Illuminate\Foundation\Providers\ArtisanServiceProvider', 'Illuminate\Auth\AuthServiceProvider', 'Illuminate\Cache\CacheServiceProvider', 'Illuminate\Session\CommandsServiceProvider', ... 'Krsman\FedEx\Laravel\Providers\FedExServiceProvider', ), ?>
将外观添加到您的config/app.php配置文件中
<?php ... 'aliases' => array( 'FedEx' => 'Krsman\FedEx\Laravel\Facades\FedEx' ), ?>
发布配置文件
php artisan config:publish krsman/fedex-laravel4
设置您的环境
在您的/app/config/packages/krsman/fedex-laravel4/config.php中添加以下设置键的值
'key' => '',
'password' => '',
'account' => '',
'meter' => '',
'beta' => false,
用法示例
获取FedEx运费
<?php $rateRequest = FedEx::rateRequest(); $shipment = new \Arkitecht\FedEx\Structs\RequestedShipment(); $shipment->TotalWeight = new \Arkitecht\FedEx\Structs\Weight(\Arkitecht\FedEx\Enums\WeightUnits::VALUE_LB, $weight); $shipment->Shipper = new \Arkitecht\FedEx\Structs\Party(); $shipment->Shipper->Address = new \Arkitecht\FedEx\Structs\Address( $shipper->address, $shipper->city, $shipper->state, $shipper->zip, null, 'US'); $shipment->Recipient = new \Arkitecht\FedEx\Structs\Party(); $shipment->Recipient->Address = new \Arkitecht\FedEx\Structs\Address( $recipient->address, $recipient->city, $recipient->state, $recipient->zip, null, 'US'); $lineItem = new \Arkitecht\FedEx\Structs\RequestedPackageLineItem(); $lineItem->Weight = new \Arkitecht\FedEx\Structs\Weight(\Arkitecht\FedEx\Enums\WeightUnits::VALUE_LB, $weight); $lineItem->GroupPackageCount = 1; $shipment->PackageCount = 1; $shipment->RequestedPackageLineItems = [ $lineItem ]; $rateRequest->Version = FedEx::rateService()->version; $rateRequest->setRequestedShipment($shipment); $rate = FedEx::rateService(); $response = $rate->getRates($rateRequest); $rates = []; if ($response->HighestSeverity == 'SUCCESS') { foreach ($response->RateReplyDetails as $rate) { $rates[$rate->ServiceType] = $rate->RatedShipmentDetails[0]->ShipmentRateDetail->TotalNetCharge->Amount; } }