【发布时间】:2011-09-12 20:49:35
【问题描述】:
我需要字符串的 64 位整数散列来用于散列映射之类的东西。
在我看来,似乎没有可以返回 64 位整数的原生 PHP 哈希功能?
我认为可以获取 sha1 哈希的第一部分并将其转换为整数。但是,这不会带来最佳性能,而且转换似乎很棘手。
当然最好不用安装就使用原生 PHP 函数。
【问题讨论】:
-
首先,您需要一个 64BIT 大小(或更低)的散列来将其转换为 64BIT(有符号)整数。您是否偏爱散列算法,或者这是您问题的一部分?
-
请看这个相关的问题,应该很容易从 Java 转换成 PHP:stackoverflow.com/questions/1660501/…
-
您可能已经考虑过了,但是使用字符串本身作为数组的键并让 PHP 隐式处理散列呢?
-
@hakre:我更喜欢原生 PHP 算法,所以可能是 sha1?我已经尝试过该算法,与本机 sha1() 相比,它真的很慢
-
@Jon:我想把它写进数据库,所以整数更适合。
标签: php algorithm hash 64-bit integer