PHP - Funzione hash equals ()

Definizione e utilizzo

Il hash_equals() la funzione confronta due stringhe date contemporaneamente e restituisce true se uguale.

Sintassi

hash_equals ( string $known_string , string $user_string ) : bool

Parametri

Suor n Parametro e descrizione
1

known_string

La stringa che verrà confrontata.

2

user_string

La stringa fornita dall'utente.

Valori restituiti

La funzione hash_equals () di PHP restituisce un valore booleano, ovvero true se le stringhe sono uguali e false in caso contrario.

Versione PHP

Questa funzione funzionerà dalla versione PHP successiva alla 5.6.0.

Esempio 1

Utilizzo di hash_equals () -

<?php
   $known_str = crypt('tutorialspoint','$5$rounds=1000$salttest$');
   $usr_str   = crypt('tutorialspoint','$5$rounds=1000$salttest$');
   $res = hash_equals($known_str, $usr_str); 
   var_dump($res);
?>

Produzione

Questo produrrà il seguente risultato:

bool(true)

Esempio 2

Confronto di hash utilizzando hash_equals -

<?php
   $known_str = crypt('tutorialspoint','$5$rounds=1000$salttest$');
   $usr_str   = crypt('helloworld','$5$rounds=1000$salttest$');
   $res = hash_equals($known_str, $usr_str); 
   var_dump($res);
?>

Produzione

Questo produrrà il seguente risultato:

bool(false)

Esempio 3

Confronto di hash da hash () e hash_file () -

<?php
   $hash1 = hash("md5", 'Welcome to Tutorialspoint');
   file_put_contents('filetest.txt', 'Welcome to Tutorialspoint'); 
   // create file filetest.txt with content : 'Welcome to Tutorialspoint'
   $hash2 = hash_file('md5', 'filetest.txt');
   $_compare = hash_equals($hash1, $hash2); 
   var_dump($_compare);
?>

Produzione

Questo produrrà il seguente risultato:

bool(true)