>  기사  >  백엔드 개발  >  PHP가 파일의 MD5 값을 가져오고 수정되었는지 확인하는 예

PHP가 파일의 MD5 값을 가져오고 수정되었는지 확인하는 예

怪我咯
怪我咯원래의
2017-06-12 13:50:322433검색

이 글에서는 주로 PHP가 파일의 MD5 값을 가져와서 수정 여부를 판단하는 예를 소개합니다. 메시지 다이제스트 알고리즘 MD5(중국어 이름은 메시지 다이제스트 알고리즘 버전 5)는 컴퓨터 보안 분야에서 널리 사용되는 해시 함수입니다. . 사용 메시지 무결성 보호를 위해 필요한 친구가 참고할 수 있습니다

업로드된 파일이 수정되었는지 확인하는 것이 필요하므로, 업로드된 파일의 md5 값을 기록하는 것이 필요합니다. 파일의 md5 값.

코드는 다음과 같습니다.

if(isset($_FILES['multimedia']) && $_FILES['multimedia']['error']==0)
{
 $file_name = $_FILES['multimedia']['name'];
 $size = getimagesize($_FILES['multimedia']['tmp_name']);
    $type = $_FILES['multimedia']['type'];
 $original = $_FILES['multimedia']['tmp_name'];
 $md5 = md5_file($original);
 echo $md5;
}

md5_file()

md5_file() 함수는 파일의 MD5 해시를 계산합니다. md5() 함수는 MD5 메시지 다이제스트 알고리즘을 포함하여 RSA 데이터 보안을 사용합니다. 성공하면 계산된 MD5 해시를 반환하고, 실패하면 false를 반환합니다.

구문: ​​md5(string,raw)

매개변수 문자열, 필수. 계산할 파일을 지정합니다.

매개변수 문자 목록, 선택사항. 16진수 또는 이진수 출력 형식을 지정합니다. TRUE - 원시 16자 이진수 형식, FALSE - 기본값. 32자의 16진수입니다.

코드는 다음과 같습니다.

<?php
$filename = "test.txt";
$md5file = md5_file($filename);
echo $md5file;
?>

"test.txt" 파일의 MD5 해시를 저장합니다.

코드는 다음과 같습니다.

<?php
$md5file = md5_file("test.txt");
file_put_contents("md5file.txt",$md5file);
?>

이 예에서는 "test.txt" test.txt"가 변경되었습니다(즉, MD5 해시가 변경되었는지 여부):

코드는 다음과 같습니다:

<?php
$md5file = file_get_contents("md5file.txt");
if (md5_file("test.txt") == $md5file)
{
 echo "The file is ok.";
}
else
{
 echo "The file has been changed.";
}
?>

출력:

코드는 다음과 같습니다:

The file is ok.

위 내용은 PHP가 파일의 MD5 값을 가져오고 수정되었는지 확인하는 예의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.