base_convert

Convert a number between arbitrary bases

Description

string base_convert(string $num, int $from_base, int $to_base)

Returns a string containing num represented in base to_base. The base in which num is given is specified in from_base. Both from_base and to_base have to be between 2 and 36, inclusive. Digits in numbers with a base higher than 10 will be represented with the letters a-z, with a meaning 10, b meaning 11 and z meaning 35. The case of the letters doesn't matter, i.e. num is interpreted case-insensitively.

Warning

base_convert may lose precision on large numbers due to properties related to the internal float type used. Please see the Floating point numbers section in the manual for more specific information and limitations.

Parameters

num

The number to convert. Any invalid characters in num are silently ignored. As of PHP 7.4.0 supplying any invalid characters is deprecated.

from_base

The base num is in

to_base

The base to convert num to

Return Values

num converted to base to_base

Changelog

Version Description
7.4.0 Passing invalid characters will now generate a deprecation notice. The result will still be computed as if the invalid characters did not exist.

Examples

Example #1 base_convert example

<?php
$hexadecimal = 'a37334';
echo base_convert($hexadecimal, 16, 2);
?>

The above example will output:

101000110111001100110100

See Also

  • intval