hash( string $algo, string $data[, bool $raw_output = FALSE] ) : string

参数

$algo

算法。可以用 hash_algos() 看当前系统支持的算法,不同的 PHP 版本支持的算法不一样。

var_dump(hash_algos())

array (size=46)
  0 => string 'md2' (length=3)
  1 => string 'md4' (length=3)
  2 => string 'md5' (length=3)
  3 => string 'sha1' (length=4)
  4 => string 'sha224' (length=6)
  5 => string 'sha256' (length=6)
  6 => string 'sha384' (length=6)
  7 => string 'sha512' (length=6)
  8 => string 'ripemd128' (length=9)
  9 => string 'ripemd160' (length=9)
  10 => string 'ripemd256' (length=9)
  11 => string 'ripemd320' (length=9)
  12 => string 'whirlpool' (length=9)
  13 => string 'tiger128,3' (length=10)
  14 => string 'tiger160,3' (length=10)
  15 => string 'tiger192,3' (length=10)
  16 => string 'tiger128,4' (length=10)
  17 => string 'tiger160,4' (length=10)
  18 => string 'tiger192,4' (length=10)
  19 => string 'snefru' (length=6)
  20 => string 'snefru256' (length=9)
  21 => string 'gost' (length=4)
  22 => string 'gost-crypto' (length=11)
  23 => string 'adler32' (length=7)
  24 => string 'crc32' (length=5)
  25 => string 'crc32b' (length=6)
  26 => string 'fnv132' (length=6)
  27 => string 'fnv1a32' (length=7)
  28 => string 'fnv164' (length=6)
  29 => string 'fnv1a64' (length=7)
  30 => string 'joaat' (length=5)
  31 => string 'haval128,3' (length=10)
  32 => string 'haval160,3' (length=10)
  33 => string 'haval192,3' (length=10)
  34 => string 'haval224,3' (length=10)
  35 => string 'haval256,3' (length=10)
  36 => string 'haval128,4' (length=10)
  37 => string 'haval160,4' (length=10)
  38 => string 'haval192,4' (length=10)
  39 => string 'haval224,4' (length=10)
  40 => string 'haval256,4' (length=10)
  41 => string 'haval128,5' (length=10)
  42 => string 'haval160,5' (length=10)
  43 => string 'haval192,5' (length=10)
  44 => string 'haval224,5' (length=10)
  45 => string 'haval256,5' (length=10)

常用的 md5,sha1,sha256 基本都支持。

demo

echo hash('md5','admin');`
//输出:
// 21232f297a57a5a743894a0e4a801fc3

其他

hash_file( string $algo, string $filename[, bool $raw_output = FALSE] ) : string 计算文件的哈希值

hash_hmac( string $algo, string $data, string $key[, bool $raw_output = FALSE] ) : string 用 HMAC 方法算hash,jwt 里面的 hs256 就可以用这个。

hash_hmac_algos( void) : array 返回支持的 hash_hmac 算法

hash_hmac_file( string $algo, string $filename, string $key[, bool $raw_output = FALSE] ) : string 用 HMAC 方法算文件的 hash 。

hash_equals( string $known_string, string $user_string) : bool 比较hash是否相同,这个比直接自己用等号比较更安全。


本文由 yang 创作,采用 知识共享署名 3.0,可自由转载、引用,但需署名作者且注明文章出处。

楼主残忍的关闭了评论