Por que usar uma contra barra antes do DateTimeImmutable (\DateTimeImmutable)? Verifiquei que ela funciona normalmente sem a contra barra.
Por que usar uma contra barra antes do DateTimeImmutable (\DateTimeImmutable)? Verifiquei que ela funciona normalmente sem a contra barra.
Olá, Victor. Tudo bem?
Estranho, no projeto do curso não era para funcionar sem o contrabarra \
.
Utilizamos o contrabarra \
quando nós precisamos acessar uma classe que está no namespace padrão do PHP, enquanto nós estamos em outro namespace. Ou seja, na aula foi visto a seguinte expressão:
new \DateTimeImmutable('1997-10-15')
Isso significa que o PHP irá procurar essa classe no namespace raiz dele.
Se o contrabarra \
não for informado, o PHP vai procurar a classe DateTimeImmutable
no namespace atual, que no exemplo do curso é:
namespace Alura\Pdo\Domain\Model;
Ou seja, ele não vai encontrar, e retornará um FATAL ERROR.
Certifique-se que você retirou todas as \
e deixe os namespaces como no curso, provavelmente será retornado um erro.
Qualquer dúvida estou à disposição, bons estudos.
Descobri porque não deu erro. Eu chamei o "use PDO;" no começo do arquivo. Como a importação já foi feita, tanto faz usar a classe com a contra barra ou não. Mas se eu não fiz a importação, aí é obrigatório colocar a contra barra cada vez que vou usar a classe.