# password_verify

(PHP 5 >= 5.5.0, PHP 7)

password_verify — 验证密码是否和散列值匹配

### 说明

password_verify ( string `$password` , string `$hash` ) : bool

验证密码是否和指定的散列值匹配。

注意 password_hash() 返回的散列包含了算法、 cost 和盐值。 因此，所有需要的信息都包含内。使得验证函数不需要储存额外盐值等信息即可验证哈希。

时序攻击（timing attacks）对此函数不起作用。

### 参数

`password`

  用户的密码。

`hash`

  一个由 password_hash() 创建的散列值。

### 返回值

如果密码和散列值匹配则返回 `TRUE`，否则返回 `FALSE` 。

### 范例

Example #1 password_verify() 例子

    <?php
    // 想知道以下字符从哪里来，可参见 password_hash() 的例子
    $hash = '$2y$07$BCryptRequires22Chrcte/VlQH0piJtjXl.0t1XkA8pw9dMXTpOq';

    if (password_verify('rasmuslerdorf', $hash)) {
        echo 'Password is valid!';
    } else {
        echo 'Invalid password.';
    }
    ?>

以上例程会输出：

    Password is valid!

### 参见

- password_hash() - 创建密码的散列（hash）
- » 用户使用