Bom dia,
Colocando a senha diferente ou igual a '1234' que está na classe Diretor aparece a mensagem, após executar o arquivo autenticacao.php:
Warning: Use of undefined constant senha - assumed 'senha' (this will throw an Error in a future version of PHP) in D:\Pastas Cristina\Aestudos2022\formacaophp\php_primeiros-passos\projeto\src\Modelo\Funcionario\Diretor.php on line 14 Senha incorreta
Arquivos relacionados:
Diretor.php
<?php
namespace Alura\Banco\Modelo\Funcionario;
class Diretor extends Funcionario
{
public function calculaBonificacao(): float
{
return $this->recuperaSalario() * 2;
}
public function podeAutenticar(string $senha): bool
{
return senha === '1234';
}
}
Autenticador.php
<?php
namespace Alura\Banco\Service;
use Alura\Banco\Modelo\Funcionario\Diretor;
class Autenticador
{
public function tentaLogin(Diretor $diretor, string $senha): void
{
if ($diretor->podeAutenticar($senha)) {
echo "Usuário logado no sitema";
}
else{
echo "Senha incorreta";
}
}
}
Autenticacao.php
<?php
use Alura\Banco\Modelo\CPF;
use Alura\Banco\Modelo\Funcionario\Diretor;
use Alura\Banco\Service\Autenticador;
require_once 'autoload.php';
$autenticador = new Autenticador();
$umDiretor = new Diretor('Joao do Pe de Feijao', new CPF('124.453.674-98'), 10000);
$autenticador->tentaLogin($umDiretor, '1234');
Alguém sabe porque a autenticacao não está funcionando, sempre dá senha incorreta? e como resolver este detalhe que gerou este warming?
Obrigada!!!