PHP CRC32是一個基於php編程環境的功能函式,該函式可用於驗證數據的完整性。
基本介紹
- 中文名:PHP CRC32
- 語法:crc32(string)
- 參數:描述
- string:必需。規定要計算的字元串
定義和用法,語法,說明,提示和注釋,例子 1,
定義和用法
PHP crc32() 函式計算一個字元串的 crc32 多項式。
該函式可用於驗證數據的完整性。
語法
crc32(string) |
參數 | 描述 |
string | 必需。規定要計算的字元串。 |
說明
生成 string 參數的 32 位循環冗餘校驗碼多項式。這通常用於檢查傳輸的數據是否完整。
提示和注釋
提示:由於 PHP 的整數是帶符號的,許多 crc32 校驗碼將返回負整數,因此您需要使用 sprintf() 或 printf() 的 "%u" 格式符來獲取表示無符號 crc32 校驗碼的字元串。
例子 1
在本例中,我們將在使用以及不使用 "%u" 格式符的情況下,輸出 crc32() 的結果(注意結果是相同的):
<?php $str = crc32("Hello world!"); echo 'Without %u: '.$str."<br />"; echo 'With %u: '; printf("%u",$str); ?> |
輸出:
Without %u: 461707669 With %u: 461707669 |
例子 2
在本例中,我們將在使用以及不使用 "%u" 格式符的情況下,輸出 crc32() 的結果(注意結果是不相同的):
<?php $str = crc32("Hello world."); echo 'Without %u: '.$str."<br />"; echo 'With %u: '; printf("%u",$str); ?> |
輸出:
Without %u: -1959132156 With %u: 2335835140 |
碰撞例子:
<?php $str1 = crc32("C19CF22AE73449A3"); $str2 = crc32("6CEAC67D6A432E47"); if($str1 == $str2){ exit("Ok! CRC32:".$str1); } else { exit("Err!"); } ?> |
輸出:
Ok! CRC32:1234567890 |