Boa tarde. Estou confusa sobre a diferença do require_once para o use namespace. Queria ver se entendi:
require_once encontra onde está localizado fisicamente o arquivo e use nomeNamespace encontra onde está localizado logicamente o arquivo?
Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!
Boa tarde. Estou confusa sobre a diferença do require_once para o use namespace. Queria ver se entendi:
require_once encontra onde está localizado fisicamente o arquivo e use nomeNamespace encontra onde está localizado logicamente o arquivo?
Mais ou menos, Karolina.
O require pega o arquivo informado e faz um "Ctrl + V" no arquivo atual. É como o PHP vai encontrar o arquivo onde a classe realmente está definida.
Já o use é para nós simplificarmos o código. Ao invés de usar new Namespace\Completo\Para\Classe em todo lugar que formos instanciar um objeto desse tipo nós podemos colocar use Namespace\Completo\Para\Classe no início do arquivo e quando formos instanciar, podemos usar somente new Classe, entende? O use é somente para resolver o nome.
Entendi, mas queria entender melhor. Na verdade quero entender a diferença de require_once para namespace, parece fazerem a mesma coisa.
Então, Karolina, na verdade eles são bem diferentes. O namespace é só uma forma de dar um "nome completo" pra sua classe. O require importa arquivos. Esses arquivos nem precisam conter classes. Pode ser um arquivo que possua várias funções, por exemplo.
Ah compreendi. Obg!