【发布时间】:2015-07-12 15:21:31
【问题描述】:
我了解 PHP 关联数组存储在哈希表中。 字符串 'keys' 使用什么散列函数?
【问题讨论】:
我了解 PHP 关联数组存储在哈希表中。 字符串 'keys' 使用什么散列函数?
【问题讨论】:
来自zend/hash.h:
/* * DJBX33A (Daniel J. Bernstein, Times 33 with Addition) * * 这是 Daniel J. Bernstein 流行的 `times 33' hash function as * 他多年前在 comp.lang.c 上发布。它基本上使用了一个功能 * 像 ``hash(i) = hash(i-1) * 33 + str[i]''。这是最好的之一 * 已知的字符串散列函数。因为它都计算得很 * 快速且分布良好。 * [...] * -- 拉尔夫·S·恩格尔沙尔 */ 静态内联 ulong zend_inline_hash_func(const char *arKey, uint nKeyLength)
【讨论】: