dflydev/base32-crockford

Encode/decode numbers using Douglas Crockford's Base32 Encoding

v1.0.0 2012-07-14 18:36 UTC

This package is auto-updated.

Last update: 2024-02-29 02:13:17 UTC


README

A Base32 Crockford implementation for PHP.

Example

use Dflydev\Base32\Crockford\Crockford;

$encodedValue = Crockford::encode('519571'); // FVCK
$decodedValue = Crockford::decode('FVCK'); // 519571

$encodedValue = Crockford::encodeWithChecksum('519571'); // FVCKH
$decodedValue = Crockford::decodeWithChecksum('FVCKH'); // 519571

By default, decoding will be lenient on the input values. This will allow for passing in the following:

$decodedValue = Crockford::decode('F-VCk'); // treated as: FVCK
$decodedValue = Crockford::decode('hEl1O'); // treated as: HE110

See the spec for the translation rules.

Decoding can be made strict by passing an optional second argument to the decode methods.

Crockford::decode('F-VCk', Crockford::NORMALIZE_ERRMODE_EXCEPTION);
Crockford::decode('hEl1O', Crockford::NORMALIZE_ERRMODE_EXCEPTION);

Requirements

  • PHP 5.3+

License

MIT, see LICENSE.

Community

If you have questions or want to help out, join us in the #dflydev channel on irc.freenode.net.

Not Invented Here

This is a port of Encode::Base32::Crockford.