Table of Contents : マニュアル

CakePHPのファイル構造

CakePHPの初期状態を調べてみましょう。CakePHPが基本的なMVCリクエストの観点からどう動くかについては学びましたが、同様に、ファイルがどう整理されているのかも知る必要があります。

  • app
  • cake
  • docs
  • index.php
  • vendors

CakePHPをダウンロードすると、四つの主なフォルダをまず目にします。appフォルダは、あなたのマジックが入る場所です。あなたのアプリケーションファイルはここに入ります。cakeフォルダは、開発チームが作成したマジックが入る場所です。このフォルダ内を編集しないようにしましょう。あなたがコアをいじった場合には、私たちはもう助けを差し伸べることができません。docフォルダは主要なreadme、変更log、ライセンス情報などが含まれています。最後に、vendorフォルダは、あなたが必要とする外部作成のPHPライブラリを置いて、CakePHPアプリケーションで使用できるようにする場所です。

Appフォルダ

アプリケーション開発の大部分は、CakePHPのappフォルダ内で行われます。appの内部フォルダについて調べてみましょう。

config
は、CakePHPが使用する(数個の)設定ファイルが入る場所です。データベース接続の詳細、ブートストラップ、コアの設定ファイルなどがここに入ります。
controllers
には、アプリケーションのコントローラとコンポーネントが含まれます。
locale
には、国際化のための文字ファイルが入っています。
models
には、アプリケーションのモデル、ビヘイビア、データソースがあります。
plugins
には、プラグインパッケージが入っています。
tmp
これは、CakePHPが一時的なデータを保管する場所です。保管される実際のデータは、CakePHPの設定しだいですが、このフォルダは通常、モデルの内容データや、ログの保管に使用されます。時にはセッション情報も入ります。
vendors
外部(サードパーティ)で作成されたクラスやライブラリは、ここに置いてください。そうすることで、vendors()関数で簡単にアクセスできるようになります。注意して観察している人は、これは重複しているのではないか、と言うかもしれません。ディレクトリ構造のいちばん上にもvendorsフォルダがあるからです。この二つのフォルダの違いは、複数のアプリケーションを動作させて、より複雑なシステムセットアップをする場合のことを考える際に扱いましょう。
views
表示用のファイルはここに置きます。エレメント、エラーページ、ヘルパー、レイアウト、ビューのファイルなどです。
webroot
運用時(production)用のセットアップでは、このフォルダがアプリケーションのドキュメントルートになります。CSSスタイルシートや画像、JavaScriptを入れるためのフォルダもあります。