Convert an arbitrarily-long string from one numeric base to another, optionally zero-padding to a minimum column width.

v2.0.2 2022-05-20 20:43 UTC

This package is auto-updated.

Last update: 2024-04-17 13:23:02 UTC


Latest Stable Version License

Improved base_convert for PHP

PHP's base_convert function does not handle large numbers well. This library does, and can also optionally zero-pad to a minimum column width.

It is a drop-in replacement for base_convert, supporting base 2 through 36, and has additional features for padding and case.

The gmp and bcmath extensions are optionally used for improved performance.

Additional documentation about the library can be found on


// Using padding, outputs 01010
\Wikimedia\base_convert( 'a', '36', '2', '5' )

Running tests

composer install --prefer-dist
composer test


This library was first introduced in MediaWiki 1.7 (r14777), and overhauled in MediaWiki 1.21 (9b9daadc46). It was split out of the MediaWiki codebase and published as an independent library during the MediaWiki 1.27 development cycle.