search
Homephp教程php手册php对文件进行hash运算的方法

php对文件进行hash运算的方法

Jun 13, 2016 am 09:07 AM
hashphpgenerationspecificrightdocumentmethodofOperationconduct

php对文件进行hash运算的方法

 具体如下:

这段代码非常有用,如果你下载了一个文件,网站提供了hash结果,你可以对你下载下来的文件进行hash运算,以验证下载的文件是否正确。

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61

62

63

64

65

66

67

68

69

70

71

72

73

74

75

76

77

78

79

80

81

82

Hash (Check) Files

#ok{color:green;}

#nono{color:red;}

if(!empty($_FILES)){

if ($_FILES["file"]["error"] > 0){

switch($_FILES["file"]["error"]){

case 1:

echo "Error: The uploaded file exceeds the upload_max_filesize directive in php.ini
";

break;

case 2:

echo "Error: The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in the HTML form.
";

break;

case 3:

echo "Error: The uploaded file was only partially uploaded.
";

break;

case 4:

echo "Error: No file was uploaded.
";

break;

case 6:

echo "Error: Missing a temporary folder.
";

break;

case 7:

echo "Error: Failed to write file to disk.
";

break;

case 8:

echo "Error: A PHP extension stopped the file upload.
";

break;

default:

echo "Unknown error occured.
";

}

} else {

echo 'Upload: ' . $_FILES['file']['name'] . '
';

echo 'Type: ' . $_FILES['file']['type'] . '
';

echo 'Size: ' . (round($_FILES['file']['size'] / 1024, 2)) . ' Kb

';

if(array_search($_POST['algo'], hash_algos())===false){

echo 'Unknown hashing algorithm requested.
';

} else {

echo 'Hashing Algorithm: '. $_POST['algo'] . '
';

$hash = hash_file($_POST['algo'], $_FILES['file']['tmp_name']);

echo 'Calculated hash: ' . $hash . '
';

if($_POST['exphash']!=='none' && !empty($_POST['exphash'])){

echo 'Expected hash: ' . $_POST['exphash'] . '

';

echo ($hash==$_POST['exphash'])? 'Hash matched expected value.' : 'Hash did not match expected value.';

echo '
';

}

}

}

?>


} else {

?>




Choose an algorithm (This is the list of all the available algorithms in your php installation)

foreach(hash_algos() as $algo){

if($algo=='md5'){

echo "
";

} else {

echo "
";

}

}

?>

}

?>

Statement
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

Video Face Swap

Video Face Swap

Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Tools

MinGW - Minimalist GNU for Windows

MinGW - Minimalist GNU for Windows

This project is in the process of being migrated to osdn.net/projects/mingw, you can continue to follow us there. MinGW: A native Windows port of the GNU Compiler Collection (GCC), freely distributable import libraries and header files for building native Windows applications; includes extensions to the MSVC runtime to support C99 functionality. All MinGW software can run on 64-bit Windows platforms.

Zend Studio 13.0.1

Zend Studio 13.0.1

Powerful PHP integrated development environment

Safe Exam Browser

Safe Exam Browser

Safe Exam Browser is a secure browser environment for taking online exams securely. This software turns any computer into a secure workstation. It controls access to any utility and prevents students from using unauthorized resources.

Notepad++7.3.1

Notepad++7.3.1

Easy-to-use and free code editor

VSCode Windows 64-bit Download

VSCode Windows 64-bit Download

A free and powerful IDE editor launched by Microsoft