Estou fazendo o curso PHP Strings: Operações e expressões regulares PHP Strings: Operações e expressões regulares, antes dele, fiz o curso de exceptions.
No início do curso é feito uma classe Usuário e ela faz uma verificação se o nome dado de entrada está correto. Eu tentei criar uma classe exception para isso, porém ao executar é retornado: Fatal error: Uncaught Error: Class "Alura\Exceptions\ErroEntradaNomeException" not found in D:\Programs and Apps\Xampp\htdocs\vscodephp\StringManipulation\Usuario.php
A classe tem que testar se foram informados Nome e sobrenome, caso um deles não tenha sido informado, joga a exception, porém fica dando fatal error, dizendo que a classe não foi encontrada.
Não consiga encontrar qual está sendo o problema aqui.
Este é o código da classe usuário
<?php
namespace Alura;
use Alura\Exceptions\ErroEntradaNomeException;
use Exception;
class Usuario
{
private $nome;
private $sobrenome;
public function __construct(string $nome)
{
$nomeSobrenome = explode(" ", $nome, 2);
if($nomeSobrenome[0] === "" || $nomeSobrenome[1] === null){
throw new ErroEntradaNomeException();
}else{
$this->nome = $nomeSobrenome[0];
$this->sobrenome = $nomeSobrenome[1];
}
}
public function getNome(): string
{
return $this->nome;
}
public function getSobrenome(): string
{
return $this->sobrenome;
}
}
?>
Esta é a classe da exception
<?php
namespace Alura\Exceptions;
use Throwable;
class ErroEntradaNomeException extends \DomainException
{
public function __construct()
{
$mensagem = "Nome ou sobranome inválido. Você deve digitar um Nome e um Sobrenome";
parent::__construct($mensagem);
}
}
?>
há ainda o arquivo do formulário e do cadastro, porém estourava o limite de caracteres.
Os arquivos estão organizados nas pastas: https://prnt.sc/0GzwtekUvLTQ