Более короткий UUID, ASCII85 с PHP
Я читал об UUID v4, и он практически уникален, и это то, что мне нужно. Проблема в том, что это слишком большое число, возможно ли генерировать UUID, такие как Facebook или Twitter с меньшим количеством символов?
Я прочитал какой-то пост, где вы можете сократить этот код до 20 с помощью Ascii85, но не вижу надежного PHP-скрипта, выполняющего эту работу. Кто-нибудь знает проверенный класс?? для случайных идентификаторов это лучший способ сохранить эти 20 символов, верно?
--- Редактировать ---
@ Дэвид Шварц
Благодарю. Мне нужен случайный уникальный идентификатор на одном сервере, от 8 до 16 символов (хорошо, 20, если это самый низкий). Идея в том, чтобы идентифицировать объекты с читаемыми идентификаторами, но НЕ инкрементально (первый объект 10001, второй 10002), способ 542A4B243J, C63426KJ70, O30V4U1I9P и т. Д. - это хорошо. Идентификаторы необходимы, чтобы быть первичными ключами (как минимум) 6 таблиц MySQL. Объекты создаются с помощью PHP на одном сервере.
@ ta.speot.is
Я написал: "Не вижу надежного сценария PHP, выполняющего работу. Кто-то знает проверенный класс??" Я не думаю, что весь код, отображаемый в Google, проверен, возможно, вы проверяли все ссылки?
@sarnold
Спасибо, но извините, не поняла хорошо =(
1 ответ
Я столкнулся с той же проблемой для корпоративного проекта, над которым работал, и не смог найти разумного и быстрого решения в PHP. Поэтому я решил написать расширение PHP, которое можно использовать для кодирования / декодирования данных с помощью base85/ascii85.
Вы можете проверить это здесь: https://github.com/miezuit/php-base85
Это проверено, используя набор автоматизированных тестов.