Php 使用Zend_Auth检查密码

Php 使用Zend_Auth检查密码,php,authentication,zend-framework,passwords,Php,Authentication,Zend Framework,Passwords,当我已经在我的页面上获得授权时,如何检查密码?我需要写一个操作,用户将更改密码,我必须检查当前的his密码。当我使用以下代码时: $this->authAdapter->setIdentity($identity); $this->authAdapter->setCredential($credential); if(Zend_Auth::getInstance()->authenticate($this->authAdapter)){...}

当我已经在我的页面上获得授权时,如何检查密码?我需要写一个操作,用户将更改密码,我必须检查当前的his密码。当我使用以下代码时:

$this->authAdapter->setIdentity($identity);
    $this->authAdapter->setCredential($credential);
    if(Zend_Auth::getInstance()->authenticate($this->authAdapter)){...}

然后我的当前会话消失了。。。如何检查属于已登录用户的密码

这就是Zend_Auth实例的
authenticate
方法所做的两件事:检查凭据是否有效并存储它们。如果只想检查凭据是否有效,请直接调用适配器
authenticate
方法:

$this->authAdapter->authenticate();

但是我怎么能做到呢?我有一个带有密码的变量,以及如何检查此密码是否与数据库中的密码匹配..?在您粘贴的代码中,只需将
if(Zend_Auth::getInstance()->authenticate($this->authAdapter))
更改为
if($this->authAdapter->authenticate())
很抱歉,它起作用了,所以authenticate();是属于适配器而不是身份验证的方法。谢谢你,纪尧姆