任意长度的输入, 固定长度的输出 ,该输出就是hash值,这种转换就是一种压缩映射,也就是hash值的空间远远小于输入的空间,

不同的输入可能散列成相同的输出,而不能从hash值来唯一的确定输入值。

<?php
function hashmd5($key) {
    $md5 = substr(md5($key), 0, 8);
    $seed = 31;
    $hash = 0;
    for($i=0; $i<8; $i++) {
        $hash = $hash*$seed + ord($md5{$i});
        $i++;
    }
    return $hash & 0x7FFFFFFFFFFF;
}
ECHO hashmd5('adeae')."<br>";
ECHO hashmd5('12233334feefwwf')."<br>";
ECHO hashmd5('45defww')."<br>";

 

得出结果

php hash算法

 

相关文章:

  • 2021-09-06
猜你喜欢
  • 2022-01-09
  • 2021-08-20
  • 2021-07-15
  • 2021-11-30
  • 2021-11-30
  • 2021-11-30
相关资源
相似解决方案