CodeEstrutura de pastas, arquivos e diretórios do Igniter

⚡ Resumo Inteligente

CodeO Igniter organiza um projeto PHP em pastas previsíveis para a lógica da aplicação, arquivos de sistema do framework, pacotes de fornecedores do Composer e um único script de entrada, permitindo que iniciantes localizem o código rapidamente e que desenvolvedores intermediários possam escalar uma estrutura MVC limpa.

  • 📁 Pasta do aplicativo: Armazena seus controladores, modelos, visualizações, configurações, cache, funções auxiliares, hooks, idioma, bibliotecas, logs e pacotes de terceiros.
  • 🧩 Pasta do sistema: Armazena o núcleo da estrutura, os drivers de banco de dados, as fontes, os auxiliares, o idioma e as bibliotecas integradas; não edite esses arquivos diretamente.
  • ⚙️ Ponto de entrada: O arquivo index.php raiz inicializa o framework, define os caminhos e encaminha todas as requisições HTTP através do controlador frontal.
  • Diferenças entre versões: CodeO Igniter 3 usa application/ e system/, enquanto CodeO Igniter 4 introduz as pastas app/, public/ e writable/ para uma separação mais rigorosa.
  • 🧪 Guia do fornecedor e do usuário: O diretório vendor armazena os pacotes do Composer que você implanta, enquanto o user_guide é uma documentação local que você deve excluir dos servidores de produção.

CodePasta Igniter

Entendendo a estrutura de arquivos em CodeO Igniter é essencial antes de você construir qualquer aplicação real. Um layout previsível ajuda você a localizar controladores, modelos e visualizações rapidamente, depurar problemas de roteamento e integrar novos membros da equipe com mais agilidade. Este tutorial aborda o layout clássico. CodeA estrutura do Igniter 3, que ainda é amplamente utilizada, também esclarece as principais diferenças que você encontrará em CodeO Igniter 4.x introduziu as pastas app/, public/ e writable/ como pastas de nível superior separadas.

O que é CodeEstrutura de arquivos e diretórios do Igniter?

O CodeA estrutura de arquivos do Igniter é a organização padrão de pastas e arquivos PHP que o framework fornece após o download ou instalação. Ela separa a lógica da sua aplicação do núcleo do framework, mantém as dependências do Composer isoladas e expõe um único ponto de entrada através do arquivo `index.php`. A imagem a seguir mostra a estrutura de arquivos no Igniter. CodeIgnição:

CodeEstrutura de Arquivos/Pastas/Diretórios do Igniter
CodeEstrutura de Arquivos/Pastas/Diretórios do Igniter

Aqui está uma árvore de diretórios simplificada para uma instalação nova. CodeInstalação do Igniter 3:

// CodeIgniter 3 root layout
project-root/
├── application/
├── system/
├── user_guide/
├── vendor/
├── composer.json
├── composer.lock
└── index.php

Explicação sobre pastas de nível superior

Vamos agora analisar os arquivos acima em CodeEstrutura do Ignitor:

  • Formulário on line – Este é o diretório que conterá a lógica da sua aplicação. Todo o código da sua aplicação estará contido neste diretório.
  • sistema. – esta pasta contém os arquivos principais da estrutura. Não é aconselhável fazer alterações neste diretório ou colocar seu próprio código de aplicativo nele.
  • guia de usuario – este diretório contém o manual do usuário para CodeIgnorar.
  • fornecedor – Este diretório contém o código-fonte dos pacotes do Composer. Os outros arquivos relacionados a este diretório são composer.json e composer.lock.
  • index.php – este é o ponto de entrada no aplicativo.

CodeSubdiretórios de aplicativos Igniter

Vamos agora analisar os diretórios com mais detalhes. Como mencionado, o diretório `application` contém o código do seu projeto. Nesta seção, examinaremos os subdiretórios internos dentro dele. CodeEstrutura de diretórios do Igniter:

  • esconderijo – Armazena arquivos em cache gerados pelas bibliotecas de cache de saída e de banco de dados.
  • configuração – Mantém arquivos de configuração como database.php, routes.php e autoload.php.
  • controladores – todos os controladores de aplicativos são definidos aqui e mapeados URL segmentos para ações.
  • core – Contém classes principais personalizadas que estendem arquivos do sistema. Por exemplo, se você criar um controlador base que outros controladores devem estender, você o colocaria neste diretório.
  • ajudantes – este diretório do CodeA estrutura de pastas do Igniter é usada para funções auxiliares definidas pelo usuário.
  • ganchos – usado para hooks personalizados na estrutura de pastas de CI que são acionados durante o ciclo de execução do framework.
  • língua – Utilizado para armazenar arquivos de idioma para aplicativos que usam mais de um idioma.
  • bibliotecas – usado para armazenar bibliotecas criadas pelo usuário.
  • toras – Os arquivos de registro do aplicativo são armazenados neste diretório.
  • modelos – Todos os modelos de aplicação devem ser definidos neste diretório.
  • terceiro – Isso é usado para pacotes personalizados que você ou outros desenvolvedores criaram.
  • visualizações – As visualizações do aplicativo ficam neste diretório.

Segue um exemplo da árvore de subdiretórios da aplicação:

// application/ subdirectories
application/
├── cache/
├── config/
├── controllers/
├── core/
├── helpers/
├── hooks/
├── language/
├── libraries/
├── logs/
├── models/
├── third_party/
└── views/

CodeSubdiretórios do sistema Igniter

Vamos agora analisar os subdiretórios do sistema na estrutura de arquivos de CI. Lembre-se de que é aqui que reside o código-fonte do framework; portanto, não faça nenhuma alteração nos arquivos deste diretório.

  • core – isto é como o coração do CodeFramework IgniterTodos os arquivos principais que compõem a estrutura estão localizados aqui. Se você deseja estender a funcionalidade de um arquivo principal, será necessário criar um arquivo principal personalizado no diretório do aplicativo. Depois disso, você poderá sobrescrever ou adicionar novos comportamentos conforme desejar. Nunca faça alterações diretamente neste diretório.
  • banco de dados – Os drivers de banco de dados, o cache e outros arquivos necessários para as operações do banco de dados são fornecidos aqui.
  • fontes – Como o nome sugere, este diretório contém fontes e informações relacionadas a fontes.
  • ajudantes – este diretório no CodeA pasta de estrutura do Igniter contém funções auxiliares que já vêm prontas para uso.
  • língua – Contém arquivos de idioma que são usados ​​pela estrutura.
  • bibliotecas – contém os arquivos de origem das várias bibliotecas que acompanham o pacote. CodeIgnição imediata.

A estrutura de pastas do sistema é semelhante a esta:

// system/ subdirectories
system/
├── core/
├── database/
├── fonts/
├── helpers/
├── language/
└── libraries/

CodeDiretório do guia do usuário do Igniter

Este diretório serve como um guia de referência para quando você quiser entender o CodeAPI do Igniter. Não faça upload deste diretório ao implantar seu aplicativo em produção, pois ele aumenta o tamanho e expõe documentação que não deve estar presente em um servidor ativo.

CodeDiretório de Fornecedores do Igniter

Este diretório contém os arquivos de origem dos pacotes que você instala via Composer. Os arquivos neste diretório devem permanecer como estão, sem nenhuma alteração. Diferentemente do diretório `user_guide`, este diretório deve ser carregado se você estiver usando pacotes do Composer em sua aplicação.

Arquivo index.php

O arquivo index.php no CodeA estrutura de arquivos do Igniter contém o código de inicialização que define o ambiente, os caminhos e o relatório de erros antes de passar o controle para o framework. Este arquivo está localizado no diretório raiz e atua como o controlador frontal para cada requisição HTTP recebida.

Como CodeIgniter 4 altera a estrutura

CodeO Igniter 4.x reorganizou o layout para melhorar a segurança e o carregamento automático do PSR-4. Em vez de uma única pasta de aplicativo, agora você vê três pastas de nível superior que separam as responsabilidades de forma mais clara:

  • aplicativo / – equivalente à antiga pasta application/, que contém Controllers, Models, Views, Config, Filters e Libraries.
  • public / – a única pasta exposta na web, contendo o arquivo index.php e seus arquivos CSS, JS e de imagem.
  • gravável/ – Armazena cache, registros, sessões e uploads que a estrutura precisa gravar em tempo de execução.
  • sistema/ – ainda contém o núcleo do framework, com namespace sob CodeIgnição.
  • vendedor / – pacotes do Composer, idênticos em função ao CI 3.
// CodeIgniter 4 root layout
project-root/
├── app/
├── public/
├── writable/
├── system/
├── vendor/
├── tests/
├── composer.json
├── env
└── spark

Se você está começando um novo projeto hoje, CodeO Igniter 4 é a versão recomendada. Se você estiver dando manutenção a uma base de código mais antiga, a estrutura do CI 3 descrita acima corresponderá ao que você vê no disco.

Trabalhando com o CodeEstrutura do Ignitor no dia a dia

Depois de saber onde cada pasta está localizada, as tarefas comuns se tornam simples. Crie um novo controlador em `application/controllers/` (ou `app/Controllers/` no CI 4), associe-o a uma rota em `config/routes.php`, construa um modelo em `models/` e renderize a saída de um arquivo de visualização em `views/`. Mantenha a configuração em `config/`, coloque o código reutilizável em `helpers/` ou `libraries/` e deixe o Composer gerenciar tudo dentro de `vendor/`. Siga essa disciplina e seu projeto permanecerá fácil de navegar mesmo à medida que crescer.

Perguntas Frequentes

A pasta `application` contém o código do seu projeto, como controladores, modelos e visualizações, e você pode editá-la livremente. A pasta `system` contém o núcleo do framework e você nunca deve modificar seus arquivos, pois as atualizações do framework os sobrescreverão.

In CodeNo Igniter 4, você coloca novos controladores na pasta app/Controllers/ usando namespaces PSR-4. Associe o nome do arquivo ao nome da classe e, em seguida, registre uma rota em app/Config/Routes.php para que o framework possa encaminhar as requisições para ela.

Não. A pasta user_guide contém documentação apenas local. Exclua-a das implantações de produção para reduzir o espaço ocupado e evitar expor material de referência do framework em um servidor ativo. As pastas vendor e system, por outro lado, devem ser implantadas.

O arquivo index.php é o controlador frontal. Ele configura o ambiente, define constantes de caminho e carrega o bootstrap do framework para que todas as requisições recebidas sejam roteadas através dele. CodeO pipeline do Igniter chega aos seus controladores e visualizações.

Sim. Ferramentas de IA como GitHub Copilot, Cursor e Claude podem criar controladores, modelos e visualizações nas pastas corretas, explicar arquivos desconhecidos e sinalizar classes fora do lugar. Elas são especialmente úteis quando você alterna entre diferentes ambientes. CodeIgniter 3 e CodeLayouts do Igniter 4.

Assistentes de IA explicam como os controladores lidam com as requisições, os modelos gerenciam os dados e as visualizações renderizam a saída, gerando arquivos correspondentes nas pastas corretas. Eles também podem revisar seu código, sugerir refatorações e reforçar a separação do padrão MVC enquanto você desenvolve aplicações reais. CodeProjetos Igniter.

Resuma esta postagem com: