该crc32()
函数计算字符串的 32 位 CRC(循环冗余校验和)。
此功能通常用于验证正在传输的数据的完整性。
由于 PHP 的整数类型是有符号的,因此在 32 位平台上,许多 crc32 校验和将导致负整数。在 64 位安装上,所有crc32()
结果都是正整数。因此,你需要使用“%U”格式化sprintf()
或者printf()
以获取无符号的字符串表示crc32()
十进制格式校验。
在下面的示例中,带有和不带有“%u”格式化程序的打印校验和将是相等的。
<?php
// Calculating checksum
$checksum = crc32("What happened to John?");
// Printing checksum normally
print $checksum."<br>";
// Printing checksum with "%u" formatter
printf("%u", $checksum);
?>
输出结果都是:28118848
本文参考:https://www.tutorialrepublic.com/php-reference/php-crc32-function.php