public function signin()
{
$data = $this->pdo('select id, password_hash from users where login = ? limit 1', [
$this->login
])->fetch();
if ($data and password_verify($this->password, $data->password_hash)) {
$_SESSION['uid'] = $data->id;
return true;
}
}
if (!$user->signin()) // сообщаем юзеру.
А работа с сессией и общение с юзером должны происходить в контроллере.