【解説】CakePHP のフォルダ構造!

ども!もっさんです!新たにCakePHP2系を使った案件に携わることになったので備忘録がてらCakePHP2系のフォルダ構造を書いていきます。

 

CakePHPをダウンロードして展開すると、次のようなファイルとフォルダが含まれていると思います

 

 

 

主要な3つのフォルダがこちらです。

  1. app ・・・作成するプログラムが入る場所。
  2. lib ・・・開発チームが作成したプログラムが入る場所。 このフォルダの中のファイルを勝手に編集しないようにしてください。
  3. vendors  ・・・必要とする外部作成の PHP ライブラリを置いて、cakephp アプリケーションで使用できるようにする場所。

 

 

Appの内部フォルダが以下になります。

 

  • App/config 

   cakephpが使用する(数個の)設定ファイルが入る場所です。 データベース接続の詳細、ブートストラップ、コアの設定ファイルなどがここに入ります。

 

  • App/console

   アプリケーションのコンソールコマンドやコンソールタスクを含みます。このディレクトリは、 bake の出力をカスタマイズするための Templates ディレクトリも含みます。

 

  • App/controller

   アプリケーションのコントローラとコンポーネントが入ります。

 

  • App/Lib 

   サードパーティ、外部ベンダからのライブラリではなく、ファーストパーティのライブラリが入ります。 これはベンダライブラリと内部ライブラリの構成を分割することを可能にします。

 

  • App/Locale 

   国際化のための文字ファイルが入ります。

 

  • App/Model

   アプリケーションのモデルが入ります

 

  • App/Plugin

   プラグインパッケージが入ります。

 

  • App/tmp 

   CakePHP が一時的なデータを保管する場所です。保管される実際のデータは、CakePHP の 設定しだいですが、このフォルダは通常、モデルの内容デ ータや、ログの保管に使用されます。 時にはセッション情報も入ります。

 

  • App/vender 

   外部(サードパーティ)で作成されたクラスやライブラリは、ここに置いてください。 そうすることで、App::import(『vendor』, 『name』) で簡単にアクセス できるようになります。 注意深く見ている人は、これは重複しているのではないか、と言うかもしれません。 ディレクトリ構造のいちばん上にも vendors フォルダがあるからです。 この二つのフォルダの違いは、複数のアプリケーションを動作させて、 より複雑なシステムセットアップをする場合のことを考える際に取り扱います。

 

  • App/view 

   表示用のファイルはここに置きます。

 

  • App/webroot

   運用時 (production) 用のセットアップでは、このフォルダがアプリケーションの ドキュメントルートになります。CSS スタイルシートや画像、JavaScript ファイルを入れるための フォルダもあります。

 

以上です。わかりやすくはなかったかもしれませんが、少しでもお役に立てればと思います!