Download the PHP package zerodahero/address-normalization without Composer
On this page you can find all versions of the php package zerodahero/address-normalization. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download zerodahero/address-normalization
More information about zerodahero/address-normalization
Files in zerodahero/address-normalization
Package address-normalization
Short Description Converts mailing addresses into a normalized format
License MIT
Informations about the package address-normalization
Basic Address Normalizer
Purpose
The main purpose of this package is as the first layer of address normalization and standardization. Recommended use is to pre-parse/normalize an address and compare to an existing cache/record set using the hash functions.
A way to normalize US mailing addresses without the need for an external service. This is a port of the perl module Geo::StreetAddress::US originally written by Schuyler D. Erle.
This is a fork from khartnett/address-normalization -- kudos for the original work!
Limitations
This is a very basic normalizer. It realistically only handles US-based addresses, and should not be considered dependable for strict address-to-address comparison. This normalizer does not verify the validity of the address! If you are dependent on accurate addresses, you need to be using some other means (3rd party service, most likely) to verify an address.
Why?
I forked and added features to this package because I needed a decent first-layer to pre-normalize addresses before sending them our standardization service. This helps us limit the number of calls and strict dependence on the service, but also lets us catch a few easy-to-match scenarios here and there, which is a better user experience.
Alternatives
Libpostal is probably the best of its class in this area. I decided not to use Libpostal because: (1) It requires a few Gbs of space, which is undesirable in my current environment, and (2) it's probably overkill, since I consider our 3rd party service to be authoritative in the matter anyway.
Installation
composer require zerodahero/address-normalization
Usage
Normalizing
Comparing
Formatting
Hashing
If you only need to make use of a consistent way of hashing (e.g. if you're starting with a dependable 5-part address, such as from a 3rd party service), you can build a SimpleAddress
.