首页 > 解决方案 > Password_hash 奇怪地不起作用

问题描述

这总是有效的

public function hash($password)
    {   
        $password1 = "123456";
        return password_hash($password1,PASSWORD_BCRYPT); 
    }

这永远行不通

 public function hash($password)
    {    
        return password_hash($password,PASSWORD_BCRYPT); 
    }

一些身体可以启发我问题在哪里?Password_verify 验证第一个但不是第二个我在 $password 上完成了 var_dump 并且一切都返回正常。

标签: phpcakephpcakephp-3.0

解决方案


记住 hash($var1,$var2) 是一个 php 函数(http://php.net/manual/en/function.hash.php)。如果您编写具有相同名称的函数,您最终会出现以下错误。

Fatal error: Cannot redeclare hash()

使用不同的名称,例如

public function hash_new($password)
{    
    return password_hash($password,PASSWORD_BCRYPT); 
}

推荐阅读