Declaração e uso de namespaces
Agrupe classes em namespaces e importe-as com instruções use.
Declaração e uso de namespaces é uma aula grátis de PHP Academy no CoddyKit. Esta é a aula 1 de 4. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de PHP Academy, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de PHP Academy inclui 4 aulas no total.
O que é um espaço de nomes
Um espaço de nomes agrupa classes, funções e constantes relacionadas para evitar conflitos de nomes entre bibliotecas.
Declarando um espaço de nomes
Use a palavra-chave namespace como a primeira instrução em um arquivo PHP (depois de <?php).
<?php
namespace App\Services;
class Logger {
public function log(string $msg): void {
echo $msg;
}
}Segmentos de espaços de nomes
Os segmentos são separados por barras invertidas (\). Cada segmento normalmente corresponde a um diretório no carregamento automático PSR-4.
Importando com use
A palavra-chave use importa o nome totalmente qualificado de uma classe para que você possa referenciá-la pelo nome curto.
<?php
namespace App\Controllers;
use App\Services\Logger;
class HomeController {
public function index(): void {
$logger = new Logger();
$logger->log("visited");
}
}Nomes totalmente qualificados
Referencie uma classe sem use adicionando uma barra invertida no início.
<?php
$logger = new \App\Services\Logger();
$logger->log("Hello");O espaço de nomes global
O código sem espaço de nomes pertence ao espaço de nomes global. Classes incorporadas, como \DateTime, também pertencem a ele. Dentro de um espaço de nomes, use o prefixo \.
Importando funções e constantes
Use use function e use const para importar símbolos que não sejam classes.
<?php
namespace App;
use function App\Utils\formatDate;
use const App\Utils\DATE_FORMAT;
echo formatDate(time(), DATE_FORMAT);Instruções use agrupadas
Importe vários símbolos em um único bloco use agrupado (PHP 7+).
<?php
use App\Models\{User, Post, Comment};Um espaço de nomes por arquivo
É permitido declarar vários espaços de nomes em um arquivo, mas isso não é recomendado. Prefira um espaço de nomes por arquivo para manter a clareza e a compatibilidade com o carregador automático.
Convenções comuns
Laravel e Symfony usam App\ como o espaço de nomes raiz, mapeado para src/ ou app/ em composer.json.
Organização de subespaços de nomes
Agrupe por funcionalidade ou camada: App\Http\Controllers, App\Domain\Orders, App\Infrastructure\Database.
Recapitulação de espaços de nomes
Pontos principais: namespace deve ser a primeira instrução; use importa símbolos; a barra invertida separa os segmentos; use o prefixo \ para classes globais dentro de um espaço de nomes.
Verificação rápida
Qual palavra-chave importa uma classe de outro espaço de nomes?
Perguntas Frequentes
A aula “Declaração e uso de namespaces” é grátis?
Sim — o texto completo de “Declaração e uso de namespaces” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de PHP Academy, atualize para CoddyKit PRO. O curso de PHP Academy inclui 4 aulas no total.
O que vou aprender em “Declaração e uso de namespaces”?
Agrupe classes em namespaces e importe-as com instruções use. Você pratica PHP Academy com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.
Preciso ter experiência prévia para começar PHP Academy?
Nenhuma experiência prévia é necessária. PHP Academy no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 1 de 4.
Quanto tempo leva a aula “Declaração e uso de namespaces”?
A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.
Posso escrever e executar código nesta aula de PHP Academy?
Sim. Cada aula de PHP Academy inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.
Todas as aulas deste curso
- Declaração e uso de namespaces
- Namespaces aninhados e aliases
- Padrão de carregamento automático PSR-4
- Registro de carregadores automáticos