O Autoloading nos permite utilizar classes sem usar o require() ou o include().
Como fazer o autoload utilizando o padrão PSR-4?
O PSR-4 é um do padrões disponíveis para se fazer autoloading em PHP e nos obriga a utilizar namespaces. Estes são os passos que você deverá seguir para fazer o autoload de classes com o PSR-4:
1- Coloque as classes que você deseja fazer o autoload em um diretório dedicado.
Por exemplo, é comum colocarmos as classes em um diretório chamado src/, seguindo a seguinte estrutura:
seu-app/src/Page.php
seu-app/src/Database.php
2- Dê um namespace para as suas classes.
Nós devemos dar o mesmo namespace para todas as classes dentro do mesmo diretório. Por exemplo, vamos dar o namespace Cafe para as classes:
3- Abra o arquivo composer.json e aponte o namespace para o diretório src/
No nosso exemplo nós demos o namespace Cafe para as classes dentro do diretório src/, então o composer.json deverá ser atualizado da seguinte forma:
- Use a chave psr-4;
- O namespace Cafe aponta para o diretório src/
- O namespace precisa terminar com \\. Por exemplo, “Cafe\\”
- Você pode substitur o “Cafe” por qualquer outro nome relacionado ao seu app ou site
4- Atualize o Composer autoloader:
composer dumpautoload -o
5- Importe o namespace para os seus scripts
Os scripts precisam importar o namespace e o autoloader. Exemplo:
Prontinho! Como vimos aqui, o composer é uma excelente ferramenta que pode também nos ajudar a fazer autoload de classes.
Obrigado pelo artigo Patricia, tava aqui apanhando pra fazer esse autoload e descobri que tava esquecendo de gerar novamente o autoload com composer dumpautoload -o, pois mudei a estrutura de pastas 😛
Passei muito tempo vendo tutoriais e não consegui. Deixo aqui meu reconhecimento. Fantástico!
Muito obrigado! Estava apanhando muito e finamente consegui após estas dicas bem simples. Deus abençoe.