public function validatePassword(string $password) {
$options = ['cost' => 12, ....]; // Параметры
if (password_verify($password, $this->password_hash)) {
if (password_needs_rehash($this->password->hash, PASSWORD_DEFAULT, $options) {
$this->password_hash = hash_password($password)
$this->save(); // Одним словом перехешируем пароль и сохраняем модельку или энтити или что там у вас
}
return true;
}
return false;
}
2. Проще платить за запросы к DaData, чем писать велосипед. Пробовали, под свои кейсы реализовали, но костыль на костыле костылем погоняет. Слишком неоднозначно всё в этом плане (нормализация).
3. Актуализация данных иной раз тот еще квест!