Я назначил кодировщик пароля для моего класса User Entity в security.yaml.Но я не понимаю, как получить этот кодировщик, когда он мне нужен в методе setPassword класса User, в моем регистре методов (UserPasswordEncoderInterface $ encoder, $ passwordInChiaro).Откуда взялся $ passwordEncoder?Я пытался $ this-> get ('security.password_encoder'), но он не работает.
Security.yaml
security:
encoders:
App\Entity\User:
#algorithm: bcrypt
User.php
public function setPassword(string $password): self
{
$codificata=$this->register($passwordEncoder, $password);
$this->password = $codificata;
}
public function register(UserPasswordEncoderInterface $encoder, $passwordInChiaro)
{
$utente = new App\Entity\User();
$encoded = $encoder->encodePassword($utente, $passwordInChiaro);
return $encoded;//ritorno la password codificata
}