Download the PHP package bishopbd/aamva-parser without Composer

On this page you can find all versions of the php package bishopbd/aamva-parser. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package aamva-parser

aamva-parser

Parse the machine-readable data from AAMVA-compliant driver's licenses and ID card PDF417 barcodes into a consistent associative array.

Requirements

Installation

Usage

For complete data, including fields that are unknown to this library or specific to an issuing jurisdiction, use parseDocument():

ParsedDocument is immutable and implements JsonSerializable. Unknown three-letter elements are preserved rather than discarded. value() returns the last occurrence for compatibility, while values() returns all repeated occurrences in source order.

Scanner input formats

Parser::parse() automatically accepts:

Transport bytes before the @ compliance indicator and control bytes after the last record are ignored. Conversion is also available directly:

Explicit conversion methods throw InvalidArgumentException for malformed input. Parser auto-detection only decodes a value when its decoded content looks like AAMVA data, preventing ordinary scan text from being misinterpreted.

parse() always returns every normalized key. Missing optional data is an empty string:

Names and addresses are mapped from DAC, DCS, DAD, DAG, DAH, DAI, DAJ, and DAK. Legacy DAA, DAB, and DCT name fields are supported as fallbacks. Expiration (DBA) and birth (DBB) dates support both MMDDYYYY and YYYYMMDD. To match the output contract above, fullEXP and fullDOB use YYYYDDMM. Missing or invalid dates produce empty strings.

The parser accepts compliant control-character separators as well as common scanner transformations such as CR/LF records, pipe-delimited records, a UTF-8 BOM, leading scanner text, omitted headers, and human-readable line formatting. It throws InvalidArgumentException when no AAMVA data elements can be found.

Compatibility scope

The parser handles the AAMVA structure generically; this alone does not prove compatibility with every card issued by every jurisdiction. The auditable DL/ID support matrix distinguishes synthetic structural tests from fixtures verified against issued cards. New approved fixtures placed under tests/Fixtures are automatically run by PHPUnit. A state is not claimed as verified until current driver-license and identification-card fixtures satisfy that matrix's acceptance gate.

The generated suite exercises DL and ID subfiles for all 50 states plus District of Columbia and ANSI header versions 00 through 10 (the 2000 through 2025 standard generations). These are synthetic interoperability tests, not substitutes for authorized, de-identified samples from issuing agencies.

Standard

The header, subfile directory, and data element handling follow the AAMVA DL/ID Card Design Standard 2025, published by the AAMVA Card Design Standard Subcommittee.

Testing


All versions of aamva-parser with dependencies

PHP Build Version
Package Version
Requires php Version ^8.4
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package bishopbd/aamva-parser contains the following files

Loading the files please wait ...