我需要从数据库ID生成一个非唯一的哈希值,我需要设置一个生成的哈希值不大于x的参数。
示例:
ID:12312452
不大于5
!
十字脚是20
。现在我可以使用do-while
来对数字求和。总和为2
。
但如果我采用54674567
,则交叉脚是44
,最后它是8
......
我需要此功能用于动态文本。我有一个带有一些元描述的数组(例如,5个描述),并且在每个页面(具有id的数据库记录)上,该函数必须选择描述。我不想将描述保存在数据库中。
答案 0 :(得分:0)
好的,这是我的解决方案:
$numbers = [
45384,
44638,
28213,
43498,
21170,
30211
];
$max = 8;
foreach ($numbers as $key => $value) {
var_dump( array_sum(str_split(crc32($value))) % $max );
}
结果:
int(6)
int(1)
int(4)
int(1)
int(4)
int(4)