加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

从PHP中的String创建唯一的4字节整数

发布时间:2020-12-13 22:33:54 所属栏目:PHP教程 来源:网络整理
导读:我有一个SQL表,它使用字符串作为键.我需要使用 PHP将该字符串(最多18个字符)转换为唯一的(!)4字节整数.有人可以帮忙吗? 解决方法 独特?不可能,抱歉. 让我们仔细看看: 有18个字符,即使我们假设只有128个可能的ASCII字符(7位),你会得到128 ^ 18个可能的字
我有一个SQL表,它使用字符串作为键.我需要使用 PHP将该字符串(最多18个字符)转换为唯一的(!)4字节整数.有人可以帮忙吗?

解决方法

独特?不可能,抱歉.

让我们仔细看看:

有18个字符,即使我们假设只有128个可能的ASCII字符(7位),你会得到128 ^ 18个可能的字符串(我甚至不会考虑更短字符串的可能性!),这是关于8E37(8和37个零).

使用4字节整数,您可以得到256 ^ 4个可能的整数,大约是4E9(40亿).

所以,你有大约4E28个字符串比你有整数;你不能有一个独特的映射.

因此,一旦输入4294967297th键,您肯定会遇到碰撞,但只要输入多个键就可以碰到碰撞.

另见:http://en.wikipedia.org/wiki/Pigeonhole_principle

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读