У меня есть строки, которые находятся в формате (0-9) (A-Z) (A-Z) (A-Z) (A-Z), например. 0AAAA или 7ZHSK и т. Д.Строка к уникальной десятичной форме
Я хочу независимый от платформы способ преобразования этого в уникальное десятичное число.
Я пробовал crc32, который очень близок к тому, что я хочу, и я проверил, что нет никаких столкновений со всеми возможными комбинациями 4569,760.
Моя проблема crc32 выводит другой результат на 32-битной машине и 64-битной машине,
Есть ли что-нибудь подобное, что будет так, что работу? Мне нужно использовать стандартные функции, которые будут доступны на нескольких языках, поэтому никаких пользовательских функций.
Edit: Вот пример кода для запуска в этих двух местах:
echo crc32('1AAAA');
output = -534072890
output = 3760894406
Какая реализация CRC это? Разумеется, CRC имеет смысл, если он ведет себя одинаково на всех платформах. – biziclop
@biziclop Я заметил это при использовании PHP в разных системах – Craig
Если CRC отличается от машин, то в вашей реализации есть ошибка. В любом случае CRC-32 для этого приложения является глупым, так как данные могут быть полностью закодированы менее чем за 32 бита. –