Home >Backend Development >PHP Tutorial >How to perform hash operation on files in php_PHP tutorial

How to perform hash operation on files in php_PHP tutorial

WBOY
WBOYOriginal
2016-07-13 09:58:211313browse

How PHP performs hash operations on files

The details are as follows:

This code is very useful. If you download a file and the website provides a hash result, you can perform a hash operation on the file you downloaded to verify whether the downloaded file is correct.

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

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 "
";

}

}

?>

}

?>

www.bkjia.comtruehttp://www.bkjia.com/PHPjc/978261.htmlTechArticlephp对文件进行hash运算的方法 具体如下: 这段代码非常有用,如果你下载了一个文件,网站提供了hash结果,你可以对你下载下来的文件进行...
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