PHP конвертирует 64-битное целое число в шестнадцатеричное и обратно

На 64-битной системе, конечно. Я бы предпочел не использовать bcmath, но я считаю, что это необходимо:

Тестовый код, который работает, но возвращает вывод как 64-битный неподписанный целое число и переполнение (PHP не поддерживает 64-битные целые числа без знака).

var_dump(-3172679146711529273);
var_dump(dechex(-3172679146711529273));
var_dump(hexdec(dechex(-3172679146711529273)));

вернусь:

int(-3172679146711529273)
string(16) "d3f8612029f848c7"float(1.5274064926998E+19)

Альтернативой может быть упаковка целого числа в другой формат (база 36?).

1

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]