Конвертация из 10 системы в 62-х ричную
До 36-ричной системы удобно использовать штатную функцию для преобразования из одной системы в другую - base_convert
Если требуется преобразование выше 36-ричной системы счисления, то для работы необходимо определить словарь, т.к. результаты регистрозависимы, например, в шестнадцатеричной нотации, например, 0xff полностью идентично 0xFF
Словарь для 64-ричной системы, это [a-zA-Z0-9]
$dictionary = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ';
Индекс символа в строке соответствует десятичному значению.
Пример кода
$base = 62;
$input = 2317864864;
$output = '';
while($input > 0){
$digit = $input % $base;
$output = $dictionary[$digit].$output;
$input = (int) ($input / $base);
}
Таблица для проверки (62-ичное число => 10-ичное число)
BOOzE => 558835242
CD0jN => 570796787
CNBxQ => 573323166
D2hqR => 576820773
CKlRX => 572547925
CuRPO => 568857552
CtfO1 => 568473041
CFCkz => 571419563
CRFSE => 574293144
BRh6j => 559421555