数据库 - 求比较方便的基于自增id映射出一串唯一数字id的算法

 呂小亽曄 发布于 2022-10-25 01:31

rails默认用自增id作为pk,并且url上通过id找到相应的资源,不过我想像微博那样通过一串长数字去定位资源
如:

http://weibo.com/u/1857759250

这种形式的数字id。

该数字串最好能够有跟自增id的一定的对应关系,比如说是自增id经过一定的算法生成。
该数字串必须是唯一的,最好是不连续的,最好在10位以内。

谢谢

2 个回答
  • id + 固定值,md5一下,不可以么?

    2022-10-26 14:05 回答
  • 一个比较简单的做法是随便找个大数xor一下,算法简单,位数很容易控制

    可以稍作变形来去除规律性,比如找16个大数,原来的数字取末4位找到对应的大数,然后末4位不变,其他位和那个大数xor,嫌末4位也有规律可以第1,3,6,15位之类的

    2022-10-26 14:05 回答
撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有