PHP의 crc32() 함수는 문자열에 대한 32비트 CRC(순환 중복 검사) 체크섬을 계산하는 데 사용됩니다. 이 함수는 주로 데이터가 전송 또는 저장 과정에서 손상되지 않았는지 확인하는 데이터 무결성 검증에 활용됩니다.
구문
crc32(str)
매개변수
str − 체크섬을 계산할 대상 문자열입니다.
반환값
crc32() 함수는 입력된 문자열의 CRC32 체크섬을 정수(integer) 형태로 반환합니다.
참고: 32비트 환경의 PHP에서는 일부 문자열에 대해 음수 값이 반환될 수 있습니다. 이 경우 printf("%u") 형식 지정자를 사용하면 부호 없는 정수로 출력할 수 있습니다.
예제 1
다음은 기본적인 사용 예시입니다.
<?php
$res = crc32("This is demo text!");
printf("%u\n", $res);
?>
출력 결과
2903462745
예제 2
이번에는 다른 문자열로 체크섬을 확인해 보겠습니다.
<?php
$s = crc32("Welcome!");
echo 'First:'.$s."\n";
printf("Second: %u\n", $s);
?>
출력 결과
First: 893564114
Second: 893564114
위 예제에서 볼 수 있듯이, 동일한 문자열에 대해 항상 같은 체크섬 값이 생성됩니다. 이러한 결정적(deterministic) 특성 때문에 crc32()는 파일 비교나 데이터 변경 여부를 빠르게 확인할 때 유용하게 사용됩니다.