Vérifie que le hachage fourni est conforme à l'algorithme et aux options spécifiées

# password_needs_rehash

(PHP 5 >= 5.5.0, PHP 7)

password_needs_rehash — Vérifie que le hachage fourni est conforme à l'algorithme et aux options spécifiées

### Description

password_needs_rehash ( string `$hash` , int `$algo` [, array `$options` ] ) : bool

Cette fonction vérifie que le hachage fourni correspond à l'algorithme et aux options spécifiées. Si ce n'est pas le cas, le hachage devrait être re-généré.

### Liste de paramètres

`hash`

  Un hachage créé par la fonction password_hash().

`algo`

  Une constantes de l'algorithme de mot de passe représentant l'algorithme à utiliser lors du hachage du mot de passe.

`options`

  Un tableau associatif contenant les options. Voir aussi les constantes de l'algorithme de mot de passe pour une documentation sur les options supportées pour chaque algorithme.

### Exemples

Exemple #1 Usage de password_needs_rehash()

`<?php
$password = 'rasmuslerdorf';
$hash = '$2y$10$YCFsG6elYca568hBi2pZ0.3LDL5wjgxct1N8w/oLR/jfHsiQwCqTS';
// Le paramètre cost peut évoluer avec le temps en fonction des améliorations
// matérielles.
$options = array('cost' => 11);
// Vérifions d'abord que le mot de passe correspond au hachage stocké
if (password_verify($password, $hash)) {
// Le hachage correspond, on vérifie au cas où un nouvel algorithme de hachage
// serait disponible ou si le coût a été changé
if (password_needs_rehash($hash, PASSWORD_DEFAULT, $options)) {
// On crée un nouveau hachage afin de mettre à jour l'ancien
$newHash = password_hash($password, PASSWORD_DEFAULT, $options);
}
// On connecte l'utilisateur
}
?>`

### Valeurs de retour

Retourne `TRUE` si le hachage doit être re-généré pour correspondre aux paramètres `algo` et `options` fournis, ou `FALSE` sinon.