PHP - Fonction Hash file ()

Définition et utilisation

le hash_file()La fonction retournera le hachage du contenu du fichier donné. La valeur de retour sera une chaîne de caractères hexadécimaux minuscules.

Syntaxe

hash_file ( string $algo , string $filename [, bool $raw_output = FALSE ] ) : string

Paramètres

Sr.Non Paramètre et description
1

algo

Nom de l'algorithme de hachage. Il existe une grande liste d'algorithmes disponibles avec hash, certains importants sont md5, sha256, etc.

Pour obtenir la liste complète des algorithmes pris en charge, utilisez la fonction de hachage hash_algos ()

2

filename

Le chemin du fichier, dont le contenu doit être converti en hachage.

3

raw_output

Par défaut, la valeur est false et renvoie donc des valeurs hexadécimales minuscules. Si la valeur est vraie, elle renverra des données binaires brutes.

Valeurs de retour

La fonction PHP hash_file () renvoie une chaîne de caractères hexadécimaux minuscules si raw_output est faux, sinon elle retournera des données binaires brutes.

Version PHP

Cette fonction fonctionnera à partir de la version PHP supérieure à 5.1.2.

Exemple 1

Pour générer le hachage du contenu d'un fichier donné -

<?php
   file_put_contents('filetest.txt', 'Welcome to Tutorialspoint'); 
   // create file filetest.txt with content : 'Welcome to Tutorialspoint'
   echo hash_file('md5', 'filetest.txt');
?>

Production

Cela produira le résultat suivant -

8ab923b97822bd258bf882e41de6ebff

Exemple 2

Test de hash () et hash_file () pour le même contenu -

<?php
   echo hash("md5", 'Welcome to Tutorialspoint');
   echo "<br/>";
   file_put_contents('filetest.txt', 'Welcome to Tutorialspoint'); 
   // create file filetest.txt with content : 'Welcome to Tutorialspoint'
   echo hash_file('md5', 'filetest.txt');
?>

Production

Cela produira le résultat suivant -

8ab923b97822bd258bf882e41de6ebff<br/>8ab923b97822bd258bf882e41de6ebff

Exemple 3

Utilisation de hash_file () pour l'image -

<?php
   echo hash_file('md5', 'https://www.tutorialspoint.com/images/tp-logo-diamond.png')
?>

Production

Cela produira le résultat suivant -

0bdba90368971801a0d5c7e81679cdc9