【发布时间】:2014-10-23 08:15:20
【问题描述】:
crc32($data) 产生与 PHP 中的 hash("crc32", $data) 完全不同的哈希值有什么具体原因吗?
考虑一下这段代码 sn-p(也在线发布在 http://ideone.com/eqbin4):
<?php
$data = "message";
echo(sprintf("%08x", crc32($data)) . "\n");
echo(hash("crc32", $data) . "\n");
?>
输出:
b6bd307f
c048b5b8
我在这里做错了什么,或者这只是 PHP 的好奇心,对相同类型的哈希使用不同的 CRC-32 计算方法?
【问题讨论】:
-
您使用的是 32 位 PHP 吗?
-
版本是 PHP 5.5.11,我本地服务器上的 x86 架构。不确定 ideone.com 使用的 PHP 版本,输出是否相同。