Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

__NAMESPACE__

Boa tarde!

Não entendi qual a função da constante mágica __ NAMESPACE __ no trecho:

spl_autoload_register(__NAMESPACE__ . "\load");

O namespace nesse caso seria o mesmo da classe que estou instanciando?

Caso sim, porque isso é feito se a função load está na raiz, e não no caminho da classe instanciada?

Pelo que eu entendi, ela não está fazendo nada nessa linha. Tanto que quando dou um echo antes da função com o __ NAMESPACE __ nada é retornado. E quando chamo a função sem nada, ela funciona normalmente:

spl_autoload_register('load');

Grato.

1 resposta
solução!

Anderson, boa tarde!

O namespace é como um apelido para o caminho da classe.

Para que o PHP entenda que a cada nova instanciação da classe ele chame a função load, nós usamos o:

spl_autoload_register(__NAMESPACE__ . "\load");

Porque a função load usa o namespace como parâmetro

Espero ter ajudado e bons estudos!

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software