1

我正在尝试将 phpass 库与现有的身份验证方法集成:

public static function authenticate($username, $password)
{
    global $db;
    $username = $db->prep_query($username);
    $password = $db->prep_query($password); // Does not seems like it will be used

    # First step: Retrieve the account based on the user input (email)
    $query_string = "SELECT * FROM users WHERE email = '{$username}' LIMIT 1";
    $query_result = static::find_by_query_string($query_string);

    return !empty($query_result) ? array_shift($query_result) : false;
}

现在回来的记录是(根据print_r($query_result)

Array ( [0] => User Object ( [id] => 7 [password] => $2a$08$qwSjSZ11TUYs5w1L89ppFer2n40HrnjlvaQ00DsUOOvjSYwoEmN4K [email] => test@user.com ) ) 1

我要检索的是:"$2a$08$qwSjSZ11TUYs5w1L89ppFer2n40HrnjlvaQ00DsUOOvjSYwoEmN4K"

但是当我使用$query_result[0][1]或者$query_result[0]["password]我得到一个错误。

我在这里想念什么?如何使用$query_string数组中的密码值?

4

1 回答 1

4

您访问第一个数组索引,它恰好是一个对象。因此,您需要访问名为密码的属性。

$query_result[0]->password
于 2013-02-11T21:09:41.157 回答