CodeIgniterのフォルダ、ファイル、ディレクトリ構造
⚡ スマートサマリー
CodeIgniterはPHPプロジェクトを、アプリケーションロジック、フレームワークシステムファイル、Composerベンダーパッケージ、および単一のエントリスクリプト用に予測可能なフォルダに整理するため、初心者はコードをすばやく見つけることができ、中級開発者はクリーンなMVC構造を拡張できます。

ファイル構造を理解する Code実際のアプリケーションを構築する前に、Igniter は不可欠です。予測可能なレイアウトにより、コントローラー、モデル、ビューをすばやく見つけ、ルーティングの問題をデバッグし、新しいチームメンバーをより迅速にオンボーディングできます。このチュートリアルでは、古典的な CodeIgniter 3 の構造は依然として広く展開されており、また、 CodeIgniter 4.xでは、app/、public/、writable/がそれぞれ独立したトップレベルフォルダとして導入されました。
は何ですか CodeIgniterのファイルとディレクトリ構造は?
その CodeIgniter のファイル構造は、フレームワークをダウンロードまたはインストールした後に付属するフォルダーと PHP ファイルのデフォルトの配置です。これにより、アプリケーション ロジックがフレームワーク コアから分離され、Composer の依存関係が分離され、index.php を介して単一のエントリ ポイントが公開されます。次の図は、ファイル構造を示しています。 Codeイグナイター:
以下は、新規インストール用の簡略化されたディレクトリツリーです。 CodeIgniter 3 のインストール:
// CodeIgniter 3 root layout project-root/ ├── application/ ├── system/ ├── user_guide/ ├── vendor/ ├── composer.json ├── composer.lock └── index.php
トップレベルフォルダの説明
それでは、上記のファイルを見てみましょう。 Code点火装置の構造:
- これは、アプリケーションのロジックを格納するディレクトリです。すべてのアプリケーションコードはこのディレクトリに格納されます。
- – このフォルダーにはフレームワークのコア ファイルが含まれています。 このディレクトリに変更を加えたり、独自のアプリケーション コードをこのディレクトリに配置したりすることはお勧めできません。
- ユーザーガイド – このディレクトリには、次のユーザーマニュアルが含まれています。 Codeイグナイター.
- ベンダー このディレクトリには、Composerパッケージのソースコードが含まれています。このディレクトリに関連するその他のファイルは、composer.jsonとcomposer.lockです。
- index.phpを – これはアプリケーションへのエントリ ポイントです。
CodeIgniterアプリケーションのサブディレクトリ
それでは、ディレクトリをさらに詳しく見ていきましょう。前述のとおり、アプリケーションディレクトリにはプロジェクトコードが含まれています。このセクションでは、アプリケーションディレクトリ内の内部サブディレクトリを見ていきます。 CodeIgniterのディレクトリ構造:
- キャッシュ – 出力およびデータベースキャッシュライブラリによって生成されたキャッシュファイルを保存します。
- 設定 – database.php、routes.php、autoload.phpなどの設定ファイルを保持します。
- コントローラ – すべてのアプリケーションコントローラがここで定義され、マッピングされます URL セグメントをアクションに変換します。
- – システムファイルを拡張するカスタムコアクラスが含まれています。たとえば、他のコントローラが拡張するベースコントローラを作成する場合、このディレクトリに配置します。
- ヘルパー – このディレクトリは CodeIgniterのフォルダ構造は、ユーザー定義のヘルパー関数に使用されます。
- フック – フレームワークの実行サイクル中に実行される、CIフォルダ構造内のカスタムフックに使用されます。
- 言語 複数の言語を使用するアプリケーションの言語ファイルを保存するために使用されます。
- ライブラリ ―独自に作成したライブラリを保存するために使用されます。
- ログ アプリケーションのログファイルはこのディレクトリに保存されます。
- モデル – すべてのアプリケーションモデルはこのディレクトリに定義する必要があります。
- 第三者 これは、あなたや他の開発者が作成したカスタムパッケージに使用されます。
- ビュー アプリケーションのビューはこのディレクトリに保存されます。
アプリケーションのサブディレクトリツリーの例を以下に示します。
// application/ subdirectories application/ ├── cache/ ├── config/ ├── controllers/ ├── core/ ├── helpers/ ├── hooks/ ├── language/ ├── libraries/ ├── logs/ ├── models/ ├── third_party/ └── views/
CodeIgniterシステムサブディレクトリ
それでは、CIファイル構造内のシステムサブディレクトリを見ていきましょう。ここはフレームワークのソースコードが格納されている場所なので、このディレクトリ内のファイルは一切変更しないでください。
- – これは心臓のようなものです CodeIgniter Frameworkフレームワークを構成するすべてのコアファイルはここにあります。コアファイルの機能を拡張したい場合は、アプリケーションディレクトリにカスタムコアファイルを作成する必要があります。その後、必要な動作をオーバーライドしたり、新しい動作を追加したりできます。ここを直接変更しないでください。
- データベース データベースドライバ、キャッシュ、およびデータベース操作に必要なその他のファイルは、ここに提供されます。
- フォント その名の通り、このディレクトリにはフォントとフォントに関する情報が含まれています。
- ヘルパー – このディレクトリは CodeIgniterの構造フォルダには、すぐに使えるヘルパー関数が含まれています。
- 言語 – フレームワークで使用される言語ファイルが含まれています。
- ライブラリ – さまざまなライブラリのソースファイルが含まれています Code箱から出してすぐに使える点火装置。
システムフォルダのレイアウトは次のようになります。
// system/ subdirectories system/ ├── core/ ├── database/ ├── fonts/ ├── helpers/ ├── language/ └── libraries/
CodeIgniterユーザーガイドディレクトリ
このディレクトリは、 CodeIgniter API。このディレクトリは、アプリケーションを本番環境にデプロイする際にアップロードしないでください。サイズが大きくなり、本番サーバーには不要なドキュメントが公開されてしまうためです。
CodeIgniterベンダーディレクトリ
このディレクトリには、Composer を介してインストールするパッケージのソースファイルが含まれています。このディレクトリ内のファイルはそのままにしておき、変更を加えないでください。user_guide ディレクトリとは異なり、アプリケーションで Composer パッケージを使用する場合は、このディレクトリをアップロードする必要があります。
index.php ファイル
index.php ファイルは CodeIgniterのファイル構造には、フレームワークに制御を渡す前に環境、パス、エラー報告を定義するブートストラップコードが含まれています。このファイルはルートディレクトリにあり、すべてのHTTPリクエストのフロントコントローラーとして機能します。
認定条件 Codeイグナイター4は構造を変更する
CodeIgniter 4.xでは、セキュリティとPSR-4オートローディングを向上させるためにレイアウトが再編成されました。単一のアプリケーションフォルダではなく、より厳密に機能を分離した3つのトップレベルフォルダが表示されるようになりました。
- app / – 以前のアプリケーション/フォルダに相当し、コントローラ、モデル、ビュー、設定、フィルタ、ライブラリを格納します。
- 公衆/ – ウェブに公開される唯一のフォルダで、index.php、CSS、JS、および画像アセットが含まれています。
- 書き込み可能/ – フレームワークが実行時に書き込む必要のあるキャッシュ、ログ、セッション、およびアップロードを保存します。
- システム/ – フレームワークの中核は引き続き保持され、名前空間は以下になります Code点火装置。
- 仕入先/ – 作曲家パッケージ。役割はCI 3と同一。
// CodeIgniter 4 root layout project-root/ ├── app/ ├── public/ ├── writable/ ├── system/ ├── vendor/ ├── tests/ ├── composer.json ├── env └── spark
今日新しいプロジェクトを始めるなら、 CodeIgniter 4 が推奨バージョンです。古いコードベースを保守している場合は、上記で説明した CI 3 の構造がディスク上の表示と一致します。
と協力する Code点火装置構造の日常
各フォルダの場所が分かれば、一般的な作業は簡単になります。application/controllers/(またはCI 4ではapp/Controllers/)に新しいコントローラを作成し、config/routes.phpでルートにマッチさせ、models/にモデルを構築し、views/にあるビューファイルから出力をレンダリングします。設定はconfig/に、再利用可能なコードはhelpers/またはlibraries/に配置し、vendor/内のすべてはComposerに管理させます。このルールを守れば、プロジェクトが成長してもナビゲーションは容易なままです。
