Imb
extends AbstractBarcode
in package
implements
BarcodeInterface
IMB - Intelligent Mail Barcode - Onecode - USPS-B-3200
(requires PHP bcmath extension)
Intelligent Mail barcode is a 65-bar code for use on mail in the United States. The fields are described as follows:
-
The Barcode Identifier shall be assigned by USPS to encode the presort identification that is currently printed in human readable form on the optional endorsement line (OEL) as well as for future USPS use. This shall be two digits, with the second digit in the range of 0-4. The allowable encoding ranges shall be 00-04, 10-14, 20-24, 30-34, 40-44, 50-54, 60-64, 70-74, 80-84, and 90-94.
-
The Service Type Identifier shall be assigned by USPS for any combination of services requested on the mailpiece. The allowable encoding range shall be 000-999. Each 3-digit value shall correspond to a particular mail class with a particular combination of service(s). Each service program, such as OneCode Confirm and OneCode ACS, shall provide the list of Service Type Identifier values.
-
The Mailer or Customer Identifier shall be assigned by USPS as a unique, 6 or 9 digit number that identifies a business entity. The allowable encoding range for the 6 digit Mailer ID shall be 000000- 899999, while the allowable encoding range for the 9 digit Mailer ID shall be 900000000-999999999.
-
The Serial or Sequence Number shall be assigned by the mailer for uniquely identifying and tracking mailpieces. The allowable encoding range shall be 000000000-999999999 when used with a 6 digit Mailer ID and 000000-999999 when used with a 9 digit Mailer ID. e. The Delivery Point ZIP Code shall be assigned by the mailer for routing the mailpiece. This shall replace POSTNET for routing the mailpiece to its final delivery point. The length may be 0, 5, 9, or 11 digits. The allowable encoding ranges shall be no ZIP Code, 00000-99999, 000000000-999999999, and 00000000000-99999999999.
Table of Contents
Interfaces
Properties
- $data : array<string|int, mixed>
Methods
- __construct() : mixed
- getChecksum() : string
- getData() : array<string|int, mixed>
- getKey() : mixed
- getType() : string
- binseqToArray() : array<string|int, mixed>
- Convert binary barcode sequence to barcode array
- decToHex() : string
- Convert large integer number to hexadecimal representation.
- hexToDec() : int
- Convert large hexadecimal number to decimal representation (string).
- imbCrc11Fcs() : int
- Intelligent Mail Barcode calculation of Frame Check Sequence
- imbReverseUs() : int
- Reverse unsigned short value
- imbTables() : array<string|int, mixed>
- Generate Nof13 tables used for Intelligent Mail Barcode
- init() : mixed
Properties
$data
protected
array<string|int, mixed>
$data
Methods
__construct()
public
__construct(string $code, float $xDim, float $gapWidth, array<string|int, int> $daft) : mixed
Parameters
- $code : string
- $xDim : float
- $gapWidth : float
- $daft : array<string|int, int>
getChecksum()
public
getChecksum() : string
Return values
stringgetData()
public
getData() : array<string|int, mixed>
Return values
array<string|int, mixed>getKey()
public
getKey(string $key) : mixed
Parameters
- $key : string
getType()
public
getType() : string
Tags
Return values
stringbinseqToArray()
Convert binary barcode sequence to barcode array
protected
binseqToArray(string $seq, array<string|int, mixed> $barcodeData) : array<string|int, mixed>
Parameters
- $seq : string
- $barcodeData : array<string|int, mixed>
Return values
array<string|int, mixed>decToHex()
Convert large integer number to hexadecimal representation.
private
decToHex(int $number) : string
Parameters
- $number : int
Return values
stringhexToDec()
Convert large hexadecimal number to decimal representation (string).
private
hexToDec(string $hex) : int
(requires PHP bcmath extension)
Parameters
- $hex : string
Return values
intimbCrc11Fcs()
Intelligent Mail Barcode calculation of Frame Check Sequence
private
imbCrc11Fcs(array<string|int, string> $codeArray) : int
Parameters
- $codeArray : array<string|int, string>
Return values
intimbReverseUs()
Reverse unsigned short value
private
imbReverseUs(int $num) : int
Parameters
- $num : int
Return values
intimbTables()
Generate Nof13 tables used for Intelligent Mail Barcode
private
imbTables(int $n, int $size) : array<string|int, mixed>
Parameters
- $n : int
- $size : int
Return values
array<string|int, mixed>init()
private
init(string $code, float $gapWidth, array<string|int, int> $daft) : mixed
Parameters
- $code : string
- $gapWidth : float
- $daft : array<string|int, int>