PHP - Funzione Hash init ()
Definizione e utilizzo
Il hash_init() funzione inizializza un hashcontext incrementale che può essere utilizzato con altre funzioni hash come hash_update (), hash_final () ecc. Accetta input come algoritmo hash e l'output come contesto hash.
Viene generato un hashContext in base a hash_algo utilizzato all'interno di hash_init (). Puoi aggiornare i tuoi dati o messaggi con hashcontext usando la funzione hash_update () e ottenere l'hash finale usando hash_final ().
Sintassi
hash_init ( string $algo [, int $options = 0 [, string $key = NULL ]] ) : HashContext
Parametri
Suor n | Parametro e descrizione |
---|---|
1 | algo Nome dell'algoritmo di hashing. C'è una grande lista di algoritmi disponibili con hash, alcuni importanti sono md5, sha256, ecc. Per ottenere l'elenco completo degli algoritmi supportati utilizzare la funzione hash hash_algos () |
2 | options C'è solo un'opzione supportata e questa è HASH_HMAC. Se utilizzi le opzioni, anche la chiave è obbligatoria. |
3 | key Se si utilizza HASH_HMAC come opzione, è necessario fornire anche la chiave e sarà una chiave segreta condivisa che verrà utilizzata con il metodo di hashing HMAC. |
Valori restituiti
La funzione hash_init () di PHP restituisce un contesto di hashing. Il contesto hash può essere utilizzato con altre funzioni hash come hash_update (), hash_update_stream (), hash_update_file () e hash_final ().
Versione PHP
Questa funzione funzionerà dalla versione PHP successiva alla 5.1.2.
Esempio 1
Per generare un contesto di hashing:
<?php
$hash_context = hash_init('md5');
hash_update($hash_context, 'Testing php'); hash_update($hash_context, ' hash functions.');
echo hash_final($hash_context);
?>
Produzione
Questo produrrà il seguente risultato:
e4310012c89a4b8479fd83694a2a3a31
Esempio 2
Usare hash_init () con hash_copy () -
<?php
$hash_context = hash_init("md5");
hash_update($hash_context, "Welcome To Tutorialspoint"); $hash_copy= hash_copy($hash_context); echo hash_final($hash_context);
echo "<br/>";
hash_update($hash_copy, "Welcome To Tutorialspoint"); echo hash_final($hash_copy);
?>
Questo produrrà il seguente risultato:
6211420491a571f89f970683221d4480<br/>d0b25da996bf035057aba79082c53b30