Symfony2のディレクトリには大きく、src, vendor, app, web があります。
これらについて簡単に説明します。
srcディレクトリ
srcディレクトリは、作成したバンドルを格納するディレクトリで。
自分たちがアプリを作っていくときは基本的にこのディレクトリ配下にファイルを
作成していきます。
このディレクトリの配下には各ネームスペースが格納されます。
初期状態では”Acme”というネームスペースディレクトリがあります。
src/My: | ネームスペースフォルダ。直下に各バンドルが格納される。 |
src/My/DBCommandBundle: | 各バンドルのトップディレクトリ。 |
src/My/DBCommandBundle/Command: | 各バンドル内のコマンドフォルダ。ここにCommandクラスを作成する |
src/My/DBCommandBundle/Controller: | 各バンドル内のコントローラフォルダ。ここにControllerクラスを作成する。 |
src/My/DBCommandBundle/DependencyInjection: | |
src/My/DBCommandBundle/Entity: | 各バンドル内のエンティティフォルダ。ここにEntityクラスを作成する。 |
src/My/DBCommandBundle/Resources: | 設定やテンプレートが格納される。(例:config, viewsフォルダ) |
src/My/DBCommandBundle/Resources/config: | 設定ファイルを格納する。(例:routing.yml, services.yml) |
src/My/DBCommandBundle/Resources/views: | 表示関連のファイルを格納する。(例:layout.html.twig) |
src/My/DBCommandBundle/Resources/views/Default: | |
src/My/DBCommandBundle/Tests: | テスト用のクラスが格納される。 |
src/My/DBCommandBundle/Tests/Controller: | テスト用のControllerクラスが格納される。 |
src/My/DBCommandBundle/config: | データベース関連の設定が格納される |
src/My/DBCommandBundle/config/doctrine: | データベース関連の設定が格納される |
src/My/DBCommandBundle/config/doctrine/metadata: | データベース関連の設定が格納される |
src/My/DBCommandBundle/config/doctrine/metadata/orm: | データベース関連の設定が格納される |
vendorディレクトリ
ここにはSymfony2の本体が格納されています。
基本的にこの配下を直接参照したり編集することはありません。
appディレクトリ
ここには、アプリケーション全体の設定やログ情報などが格納されます。
また、consoleコマンドもここに格納されています。
webディレクトリ
ここには、エンドユーザがブラウザから参照するapp.phpが格納されています。
そのため、少なくともこのディレクトリ配下はwebサーバで公開する必要があります。