PHP code example of pdt256 / shipping

1. Go to this page and download the library: Download pdt256/shipping library. Choose the download type require.

2. Extract the ZIP file and open the index.php.

3. Add this code to the index.php.
    
        
<?php
require_once('vendor/autoload.php');

/* Start to develop here. Best regards https://php-download.com/ */

    

pdt256 / shipping example snippets


$shipment = new Shipment;
$shipment
    ->setFromIsResidential(false)
    ->setFromStateProvinceCode('IN')
    ->setFromPostalCode('46205')
    ->setFromCountryCode('US')
    ->setToIsResidential(true)
    ->setToPostalCode('20101')
    ->setToCountryCode('US');

$package = new Package;
$package
    ->setLength(12)
    ->setWidth(4)
    ->setHeight(3)
    ->setWeight(3);

$shipment->addPackage($package);

'requestAdapter' => new RateRequest\StubUPS(),

use pdt256\Shipping\UPS;
use pdt256\Shipping\RateRequest;

$ups = new UPS\Rate([
    'prod'           => false,
    'accessKey'      => 'XXXX',
    'userId'         => 'XXXX',
    'password'       => 'XXXX',
    'shipperNumber'  => 'XXXX',
    'shipment'       => $shipment,
    'approvedCodes'  => [
        '03', // 1-5 business days
        '02', // 2 business days
        '01', // next business day 10:30am
        '13', // next business day by 3pm
        '14', // next business day by 8am
    ],
    'requestAdapter' => new RateRequest\StubUPS(),
]);

$rates = $ups->getRates();

array (
  0 => 
  pdt256\Shipping\Quote::__set_state(array(
     'code' => '03',
     'name' => 'UPS Ground',
     'cost' => 1910,
     'transitTime' => NULL,
     'deliveryEstimate' => NULL,
     'carrier' => 'ups',
  )),
  1 => 
  pdt256\Shipping\Quote::__set_state(array(
     'code' => '02',
     'name' => 'UPS 2nd Day Air',
     'cost' => 4923,
     'transitTime' => NULL,
     'deliveryEstimate' => NULL,
     'carrier' => 'ups',
  )),
  2 => 
  pdt256\Shipping\Quote::__set_state(array(
     'code' => '13',
     'name' => 'UPS Next Day Air Saver',
     'cost' => 8954,
     'transitTime' => NULL,
     'deliveryEstimate' => NULL,
     'carrier' => 'ups',
  )),
  3 => 
  pdt256\Shipping\Quote::__set_state(array(
     'code' => '01',
     'name' => 'UPS Next Day Air',
     'cost' => 9328,
     'transitTime' => NULL,
     'deliveryEstimate' => NULL,
     'carrier' => 'ups',
  )),
)

use pdt256\Shipping\USPS;
use pdt256\Shipping\RateRequest;

$usps = new USPS\Rate([
	'prod'     => false,
	'username' => 'XXXX',
	'password' => 'XXXX',
	'shipment' => $shipment,
	'approvedCodes'  => [
		'1', // 1-3 business days
		'4', // 2-8 business days
	],
	'requestAdapter' => new RateRequest\StubUSPS(),
]);

$rates = $usps->getRates();

array (
  0 => 
  pdt256\Shipping\Quote::__set_state(array(
     'code' => '4',
     'name' => 'Parcel Post',
     'cost' => 1001,
     'transitTime' => NULL,
     'deliveryEstimate' => NULL,
     'carrier' => 'usps',
  )),
  1 => 
  pdt256\Shipping\Quote::__set_state(array(
     'code' => '1',
     'name' => 'Priority Mail',
     'cost' => 1220,
     'transitTime' => NULL,
     'deliveryEstimate' => NULL,
     'carrier' => 'usps',
  )),
)

use pdt256\Shipping\Fedex;
use pdt256\Shipping\RateRequest;

$fedex = new Fedex\Rate([
	'prod'           => FALSE,
	'key'            => 'XXXX',
	'password'       => 'XXXX',
	'accountNumber' => 'XXXX',
	'meterNumber'   => 'XXXX',
	'dropOffType'  => 'BUSINESS_SERVICE_CENTER',
	'shipment'       => $shipment,
	'approvedCodes'  => [
		'FEDEX_EXPRESS_SAVER',  // 1-3 business days
		'FEDEX_GROUND',         // 1-5 business days
		'GROUND_HOME_DELIVERY', // 1-5 business days
		'FEDEX_2_DAY',          // 2 business days
		'STANDARD_OVERNIGHT',   // overnight
	],
	'requestAdapter' => new RateRequest\StubFedex(),
]);

$rates = $fedex->getRates();

array (
  0 => 
  pdt256\Shipping\Quote::__set_state(array(
     'code' => 'GROUND_HOME_DELIVERY',
     'name' => 'Ground Home Delivery',
     'cost' => 1655,
     'transitTime' => 'THREE_DAYS',
     'deliveryEstimate' => NULL,
     'carrier' => 'fedex',
  )),
  1 => 
  pdt256\Shipping\Quote::__set_state(array(
     'code' => 'FEDEX_EXPRESS_SAVER',
     'name' => 'Fedex Express Saver',
     'cost' => 2989,
     'transitTime' => NULL,
     'deliveryEstimate' => 
    DateTime::__set_state(array(
       'date' => '2014-09-30 20:00:00',
       'timezone_type' => 3,
       'timezone' => 'UTC',
    )),
     'carrier' => 'fedex',
  )),
  2 => 
  pdt256\Shipping\Quote::__set_state(array(
     'code' => 'FEDEX_2_DAY',
     'name' => 'Fedex 2 Day',
     'cost' => 4072,
     'transitTime' => NULL,
     'deliveryEstimate' => 
    DateTime::__set_state(array(
       'date' => '2014-09-29 20:00:00',
       'timezone_type' => 3,
       'timezone' => 'UTC',
    )),
     'carrier' => 'fedex',
  )),
  3 => 
  pdt256\Shipping\Quote::__set_state(array(
     'code' => 'STANDARD_OVERNIGHT',
     'name' => 'Standard Overnight',
     'cost' => 7834,
     'transitTime' => NULL,
     'deliveryEstimate' => 
    DateTime::__set_state(array(
       'date' => '2014-09-26 20:00:00',
       'timezone_type' => 3,
       'timezone' => 'UTC',
    )),
     'carrier' => 'fedex',
  )),
)