详细介绍:crc32算法php版----crc32.php

 reverseBits \$n= ".$result."";
$result2=0x0 & 0xff;
for ($i = 0; $i  result1= ".$result1."";
$n1=$n & 1 n2= ".$n2."";
$result2 = $result1 | $n2;
//echo " == ".$result2."";
}
//echo " reverseBits == ".$result2."";
return $result2;
}
//echo dechex(reverseBits(0x68));
//echo dechex(reverseBits(bin2hex("h")));
//echo dechex(reverseBits(ord("h")));
function reverseBits32($n) {
$result = $n & 0xffffffff;
//echo " reverseBits \$n= ".dechex($result)."";
for ($i = 0; $i  result1= ".$result1."";
$n1=($n & 1 n2= ".$n2."";
$result2 = $result1 | $n2;
//echo " = ".$result2."";
}
return $result2;
}
//echo " reverseBits32==== ".dechex(reverseBits32(0x68000000));
foreach ($stringArray as $string) {
//echo "\$string".$string . "";
$stringhex= reverseBits(ord($string));
//echo " reverseBits ==== ".$stringhex;
//echo " \$stringhexx = ".dechex($stringhexx). "";
$stringhexx= ($stringhex ".dechex($remainder) . "";
for($i=0;$i for begin \$remainder= ".dechex($remainder) . "";
if ($remainder & 0x80000000)
{
$remainder = ($remainder  for if 1 ";
$remainder =($remainder ^ $poly)& 0xFFFFFFFF;
//echo " for if 1 =".dechex($remainder) . "";
}else{
$remainder = ($remainder  for if 2 ";
}
}
echo "\$string =".$string . "";
$remainder= reverseBits32($remainder);
//echo "".$remainder;
//echo " not xor= ".dechex($remainder);
$remainder=($remainder^0xFFFFFFFF);
echo " xor =".dechex($remainder);
}
echo "========".dechex($remainder);
?>

<?php
echo "<br>";
$str1 = crc32("h");
printf("crc32(\"h\")=%8x",$str1);
echo "<br>";
$str2 = crc32("he");
printf("crc32(\"he\")=%8x ",$str2);//jieguo:
?>


crc32("h")=916b06e7
crc32("he")=d1256687

posted @ 2025-08-14 21:08  yjbjingcha  阅读(7)  评论(0)    收藏  举报