かめのはこ

とあるエンジニアのメモ帳です

1年前のCakePHP2系で作ったプロジェクト

cakephp2系を使った失敗構成

@shareにこだわったわりに似たようなメソッドが微妙に名前を変えて実装される

 shareが実装後半で肥大化する恐怖

@const用意しすぎてカオス

 

まぁ思い出ということで・・・

 

構成的には

・フロント向けアプリケーション

・バックエンド向けアプリケーション

・API向けアプリケーション

・バッチ向けアプリケーション

・コアモジュール

環境変数

・共通モジュール

ってな感じにわけた

 

ディレクトリで見ると

・アプリケーション

app_batch

app_front

app_admin

app_api

┣Config

┃┣bootstrap.php # env/bootstrap.php をrequire

┃┣const.php # 普通に定義(Configure使って)

┃┣core.php # 空ファイル

┃┣database.php # 空ファイル

┃┗…

┣Console

┣Controller

┣Error

┣Locale

┣Test

┣View

┣tmp

┗webroot

 

・コア

core

 

環境変数

┣bootstrap.php

┣const.php

┣environment.php # 環境名だけ定義(=ディレクトリ名) ex.)local

┗local or test or prod

 ┣const.php

 ┣core.php

 ┗database.php

 

・共通モジュール

share

┣Controller

┣Datas

┣Lib

┣Model

┣Plugin

┣Vendor

┗View

 

★const3つもある(読み込み中に列挙)

env/const.php # 共通

[APP]/Config/const.php # プロジェクト依存

env/[ENV]/const.php # 環境に依存